2012-02-03 54 views
0

我創建了一個ListView和我希望能夠做到這一點:如何使用Em.ContainerView內模板作爲孩子的模板

{{#view UI.ListView}} 
    <div class="icon"><img src="{{icon}}" /></div> 
    <span class="name">{{name}}</span> 
{{/view}} 

,並使用:

<div class="icon"><img src="{{icon}}" /></div> 
<span class="name">{{name}}</span> 

爲childView模板。

我該怎麼做?

編輯:也許我不清楚在我的問題。這是我最終得到的:https://gist.github.com/1626943(見第27-30行)。 我試圖獲取視圖的內部模板字符串,但這是不可用的任何地方(至少我找不到它)。只有可用的編譯版本。但這似乎夠了。

回答

0

list.handlebars應該是這樣的:

{{#each items}} 
{{view App.ShowItemView entryBinding="this"}} 
{{/each}} 

而且,show.handlebars應該像部份:

<div class="icon"><img src="{{icon}}" /></div> 
<span class="name">{{item.name}}</span> 
1
  1. 只是想指出,你應該使用bindAttr圖像src的助手。

  2. 我不認爲丹的回答會的工作,因爲它是結合每個項目entry,但隨後在子視圖中使用item.name

我已經把一個JS提琴同時顯示這些東西:http://jsfiddle.net/tomwhatmore/xXq7e/1/

相關問題