Связывание данных в динамически вставленном полимерном элементе

В некоторых случаях нам может потребоваться динамическое добавление пользовательского элемента в контекст. Затем:

Вставленный полимер может получить некоторые свойства, связанные с другим свойством внутри контекста, поэтому он может измениться соответствующим образом.

На уровне полимера 0.5 мы могли бы использовать PathObserver для привязки свойства к свойству контекста для недавно добавленного компонента. Однако я не нашел обходного пути или аналога для полимера 1.0.

Я создал пример для 0.5 и точно так же для 1.0. Ниже приведен код полимера, по которому он делает инъекцию. Также вы можете увидеть полные примеры поршней для ясности.

Ej 0,5:

<polymer-element name="main-context">
  <template>
    <one-element foo="{{foo}}"></one-element>
    <div id="dynamic">
    </div>
  </template>
  <script>
    Polymer({
      domReady: function() {
        // injecting component into polymer and binding foo via PathObserver
        var el = document.createElement("another-element");
        el.bind("foo", new PathObserver(this,"foo"));
        this.$.dynamic.appendChild(el);
      }
    });
  </script>
</polymer-element>

Пожалуйста, посмотрите полный пример plunkr:http://plnkr.co/edit/2Aj3LcGP1t42xo1eq5V6?p=preview

Ej 1.0:

<dom-module id="main-context">
  <template>
    <one-element foo="{{foo}}"></one-element>
    <div id="dynamic">
    </div>
  </template>
</dom-module>
<script>
  Polymer({
    is: "main-context",
    ready: function() {
      // injecting component into polymer and binding foo via PathObserver
      var el = document.createElement("another-element");
      // FIXME, there's no a path observer: el.bind("foo", new PathObserver(this,"foo"));
      this.$.dynamic.appendChild(el);
    }
  });
</script>

Пожалуйста, посмотрите полный пример plunkr:http://plnkr.co/edit/K463dqEqduNH10AqSzhp?p=preview

Вы знаете какой-нибудь обходной путь или эквивалент с полимером 1.0?

Ответы на вопрос(2)

Ваш ответ на вопрос