我的代码的目的是拥有一组导航位置,其中包含' n'名单。我想在导航中为用户显示#。这是一个例子: 搜索(3) 合格(2) 提案(6)
导航中的我的车把模板如下:
<li>{{#link-to "qualifieditems"}}
Qualified ({{controllers.qualifieditems.count}})
{{/link-to}}
</li>
我的控制器看起来像这样:
App.QualifiedItemsController = Ember.ArrayController.extend({
count: function() {
return this.get('model.length');
}.property('@each')
)};
当我点击相关的导航栏时,ember-data会正确显示加载和计数。
从路由器获取数据:
App.QualifiedItemsRoute = Ember.Route.extend({
model: function(){
return this.store.find('qualifieditem');
}
});
导航控制器:
App.NavController = Ember.Route.extend({
needs: 'qualifieditems'
});
导航的路线:
App.NavRoute = Ember.Route.extend({
model: function () {
return this.store.find('qualifieditem');
}
});
所以问题仍然存在......当导航首次加载时,如何让{{count}}更新所有导航项?
提前感谢您的帮助!如果发布任何其他代码会有所帮助,请告诉我。
答案 0 :(得分:0)
如果我理解正确,请尝试在模型加载
时观察您的计算属性count: function() {
return this.get('model.length');
}.property('@each', '@each.didLoad')
当模型最初完成加载时,didLoad标志将更改为true。