我试图找出显示对象数组的正确方法,这些对象数组由对象的唯一“categoryName”属性索引,但我目前尝试这样做的方式并没有像我期望的那样表现。
LO.List = DS.Model.extend({
name: DS.attr('string'),
items: DS.hasMany('LO.Item'),
categoryNames: function() {
// return an array of all unique item.categoryNames
}.property('items.@each.isLoaded')
});
LO.Item = DS.Model.extend({
name: DS.attr('string'),
categoryName: DS.attr('string')
});
在我的模板中,我试图遍历每个 categoryName,渲染它,然后渲染该类别中的所有项目。
<ul>
{{#each content.categoryNames}}
<li>
Category: {{this}}
Items: {{view LO.ItemsInCategoryView categoryNameBinding="" itemsBinding=""}}
</li>
{{/each}}
</ul>
我对 ItemsInCategoryView 的绑定有问题,因为我无法获取当前上下文 categoryName 或该视图中的整个 Items 数组。
摆弄:http: //jsfiddle.net/6ph42/2/
我应该这样做有不同的方式吗?如果没有,我应该将哪些绑定传递给这里的视图?
谢谢!