2014-10-28 76 views
0

如何從post-card元素中更新order-items-list元素中的綁定數據?聚合物 - 使用綁定數據刷新模板

我使用的是Polymerpolymer-element s在影子DOM中)。

我一直在試圖弄清楚這幾個小時,但無濟於事(我是網絡開發的新手)。其中一個我想事情是這樣的:(度外錯誤:Cannot read property 'getElementsByTagName' of undefined

this.$.orderitemstemplateparent.getElementsByTagName('template')[0].iterator_.updateIteratedValue(); 

我有以下3個文件:

index.html

<html> 
    <body unresolved> 
     <core-header-panel> 
      <div id="container"> 
       <div id="order-items-div> 
        <order-items-list id="order-items-list"> 

order-items-list.html

<polymer-element name="order-items-list"> 
    <template> 
     <div id="orderitemstemplateparent"> 
      <template id="order-items-template" repeat="{{post in posts}}> 
    <script> 
     Polymer ({ 
      // FUNCTIONS THAT UPDATE THE DATA {{posts}} HERE 
     }); 
    </script> 

post-card.html

<polymer-element name="post-card"> 
    <template id="card-template"> 
     <div id="card-header"> 
      <paper-ripple on-tap="{{cardClick}}"></paper-ripple> 
    <script> 
     Polymer ({ 
      cardClick: function(event, detail, sender) { 
       // RELOAD #order-items-template FROM HERE 
      } 
     }); 
    </script> 

任何幫助,將不勝感激。

回答

1

如果鍵中有-的屬性,則需要使用括號表示法才能訪問它們。

this.$['order-items-template-parent'].getElementsByTagName('template')[0].iterator_.updateIteratedValue(); 

否則,它的分析是這樣的:

this.$.order - items - template - parent.getElementsByTagName('template')[0].iterator_.updateIteratedValue(); 

你正在做一些奇怪的減法,parent是不確定的。

+0

在實際的代碼中,ID沒有「-'(對不起)。我只是在重寫問題的代碼時添加了這個。但感謝您的答案。我更新了問題並插入了括號。 – davidwroxy 2014-10-28 20:06:48

+0

你仍然在做錯 - 你需要報價,並在開始時沒有時間。 – Scimonster 2014-10-28 20:07:28

+0

現在我更新了問題以更接近我的實際代碼。我刪除了'-'。 – davidwroxy 2014-10-28 20:10:04