我有一个AlertsController,它下面有多个AlertController子级。当用户单击警报时,我在AlertView的AlertController中将isSelected标志设置为 true 。然后我在AlertsController中有一个计算属性,它应该返回所选警报的数量。
AlertsController 和 AlertController 如下所示:
App.AlertsController = Ember.ArrayController.extend({
itemController: 'Alert',
//numSelected doesn't update when isSelected flag in an alert changes
numSelected: function(){
return this.filterProperty('isSelected', true).get('length');
}.property('@each.isSelected')
});
App.AlertController = Ember.ObjectController.extend({
isSelected : false,
});
我知道 AlertController 中的isSelected属性正在更新,但AlertsController中numSelected的值仅在页面加载时计算一次。
我在以下小提琴中重新创建了我的问题:
JSFiddle:http: //jsfiddle.net/WLAnF/8/
有谁知道我在这里做错了什么?谢谢您的帮助!