Dart Polymer 1.0 есть ли способ использовать один "рефектируемый" класс на стороне клиента и сервера?
Использование JsProxy в Dart Polymer 1.0
включить двустороннюю привязку, не разрешать использовать эти классы на стороне сервера. Расширение от родительского класса с JsProxy
также не решает проблему.
Как я пытался обойти эту проблему. Я создаю класс (для использования на стороне сервера), а затем расширяется от этого с JsProxy
:
class Person {
@reflectable String name;
@reflectable int age;
Person(this.name, this.age);
}
class PersonModel extends Person with JsProxy {
PersonModel(name, age) : super(name, age);
}
объект person
не отражает изменения, если я изменяю значение, используя set
<my-element>
<p>[[person.name]], [[person.age]]</p>
</my-element>
void main() {
PersonModel person;
set('person', new PersonModel('Tom', 23));
}
Есть ли способ использовать класс на стороне клиента и сервера, без необходимости поддерживать два отдельных класса для клиента и сервера? Может быть, есть другие способы решить эту проблему?
1 ответ
В соответствии с обновлениями выпуска https://github.com/dart-lang/polymer-dart/issues/664 это в настоящее время не поддерживается, но есть планы избавиться от этого ограничения.