2015-08-17 74 views
1

不知何故我放在{{color}}{{avatar}}中的變量不會被實際內容解釋/交換。見下面的例子:{{variable}}不解釋

<paper-toolbar id="navheader" class="tall"> 
    <div class="middle avatar {{color}}" style="background-image: url({{avatar}})"></div> 
    <div class="bottom uuid">{{uuid}}</div> 
</paper-toolbar> 

如果我不是把顏色可變,其中uuid是,它會打印正確color,這意味着它不是變量沒有被設置或不published。這似乎是干擾的,我做錯了什麼?值得一提的是,這是在「主要」文件中完成的。

全部下面的代碼:

<paper-drawer-panel id="drawerPanel" responsive-width="1280px"> 
<div class="nav" drawer> 
     <paper-toolbar id="navheader" class="tall"> 
      <div class="middle avatar {{color}}" style="background-image: url({{avatar}})"></div> 
      <div class="bottom uuid">{{uuid}}</div> 
     </paper-toolbar> 


    <section class="layout vertical" id="onlineList"> 
     <paper-item label="Online Now" class="subdue layout horizontal center"></paper-item> 
     <template is="dom-repeat" items="{{cats}}" as="cat"> 
      <paper-item label="{{cat}}"></paper-item> 
     </template> 
    </section> 
</div> 

<paper-header-panel main mode="waterfall"> 

<paper-toolbar> 
     <div class="flex">Kitteh Anonymous</div> 
     <iron-icon icon="account-circle"></iron-icon><span>{{occupancy}}</span> 
</paper-toolbar> 

<!-- Main Content --> 
<div class="layout vertical fit" id="chat"> 
     <div class="chat-list flex"> 
     <!--<x-chat-list avatar="url" username="name" text="hello" status="online" timestamp="1420145273945"></x-chat-list>--> 
      <template is="dom-repeat" items="{{messageList}}" as="message"> 
       <x-chat-list color="{{message.color}}" avatar="{{message.avatar}}" username="{{message.uuid}}" text="{{message.text}}" status="{{message.status}}" timestamp="{{message.timestamp}}"></x-chat-list> 
      </template> 
     </div> 
     <div class="shim"></div> 

     <div class="send-message layout horizontal"> 
      <paper-input class="flex" label="Type message..." id="input" value="{{input}}" on-keyup="checkKey"></paper-input> 
      <paper-fab icon="send" id="sendButton" on-tap="sendMyMessage"></paper-fab> 
     </div> 
</div> 
</paper-header-panel> 
</paper-drawer-panel> 

回答

1

在1.0,您必須附上綁定在標籤中沒有空格,或者它是一個屬性的全部和唯一內容,即<hi so="{{then}}">{{there}}</hi>

+0

嗯好的,謝謝。那麼,我該如何「添加」類等呢? :o – Whyser

+0

根據元素中的狀態計算出的屬性將成爲我的第一個想法。 – newfivefour

3

字符串連接在1.0中不像以前那樣受支持,儘管它在上次我聽到時正在處理。

https://www.polymer-project.org/1.0/docs/devguide/data-binding.html#binding-to-text-content

你必須創造出爲您執行拼接的方法,並綁定到該方法。

例子:

<div class$="{{_colorClass(color)}}" style$="{{_backgroundImage(avatar)}}"></div> 

<script> 
    Polymer({ 
    _colorClass: function(color) { 
     return 'middle avatar '+color; 
    }, 
    _backgroundImage: function(avatar) { 
     return 'background-image: url('+avatar+');'; 
    } 
    }); 
</script> 
+0

謝謝。向我展示一個簡單方法的例子,它使用價值並保留現有的價值?另外,如果我想「添加」一個類(正如我試圖做的那樣),那麼最好的方法是什麼?而且......他們如何不包含這樣一個重要的功能......:/ – Whyser

+0

這是正確的。此外,對於綁定到本地屬性(如styleor類),應使用帶$符號的屬性綁定語法。見[這裏](https://www.polymer-project.org/1.0/docs/devguide/data-binding.html#native-binding)。 – Maria

+0

我用一個例子更新了我的答案。 – Zikes