Обязательный императив
Есть ли способ настроить привязки обязательно. Пример использования:
var el2 = new MyElement();
el2.myProp = this.$.anotherElement.anotherProp
Это не установит привязку, просто назначит значение или объект. Я хотел бы найти способ сделать что-то вроде:
el2.myProp.bindTo(this.$.anotherElement.anotherProp)
Возможный?
1 ответ
Polymer 1.0 в настоящее время не поддерживает это - как объясняет @kevinpschaaf в Github https://github.com/Polymer/polymer/issues/1778.
(комментарий @kevinpschaaf)
Нет, в настоящее время мы не поддерживаем это, кроме dom-bind, который является единственной реализацией шаблона, которая позднее связывает дочерние экземпляры. Вы можете document.createElement('template', 'dom-bind'), затем вы можете динамически добавлять дочерние элементы с аннотациями привязки к его содержимому, и привязки будут оцениваться только после прикрепления dom-bind к документу. Смотрите здесь тесты, которые показывают это использование: https://github.com/Polymer/polymer/blob/master/test/unit/dom-bind.html
Обратите внимание, что dom-bind в настоящее время не разрешает привязку к внешней области видимости, поэтому он имеет ограниченное использование в пользовательских шаблонах элементов (это основной вариант использования для привязки между элементами в основном документе), и это вряд ли изменится в краткосрочной перспективе.
Мы достигаем значительной оптимизации производительности, выполняя связывающие соединения в прототипе во время регистрации элемента (а не во время экземпляра), и мы не создали достаточно механизмов, чтобы можно было легко добавлять / удалять привязки во время выполнения,