4
我有一個兩層深度數據模型,我想用Ember.js作爲嵌套列表顯示。如果我做了簡單的版本,它表現相當好:Ember.js嵌套視圖變得非常慢
{{#each parent in content}}
<p>Table {{parent.id}}</p>
<ul>
{{#each item in parent.children}}
<ul>
<li>{{item.position}}</li>
<li>{{item.position}}</li>
<li>{{item.position}}</li>
</ul>
{{/each}}
</ul>
{{/each}}
http://jsfiddle.net/krumpi/TdZJG/
然而,如果不是的顯示爲原始字符串我使用嵌套Ember.Select和Ember.TextArea視圖的性能模型的性能受到了很多,它需要被按下加載按鈕相當多之後的頁面來顯示控制:
{{#each parent in content}}
<ul>
{{#each item in parent.children}}
<ul>
<li>pos: {{item.position}}</li>
<li>
{{view Ember.Select
class="input-small"
contentBinding="App.CheckValues"
selectionBinding="item.status"}}
</li>
<li>{{view Ember.TextArea class="textarea-animated" name="description" valueBinding="item.comment"}}</li>
</ul>
{{/each}}
</ul>
{{/each}}
http://jsfiddle.net/krumpi/wtwHN/
關於如何提高性能,你有什麼建議嗎?這是用ember-1.0.0-pre4
這是由於您在第二種方法中創建的綁定。創建綁定是一項昂貴的任務。 – mavilein 2013-02-20 19:29:24
我想這可以通過編寫一個ContainerView來減輕這些綁定設置。但不幸的是,我還沒有開發出自己的ContainerView。 – mavilein 2013-02-20 19:44:48
我不知道你是否可以在更高層次上進行綁定,這可能有助於減少綁定的數量。 – Krumpi 2013-02-21 11:50:49