我有一个带复选框选择的数据表。如果检查表中的项目,我想在页面的另一部分显示该数据。看起来它应该很简单,但我似乎无法弄明白。我做了一个js
JS Bin with data table example
这是控制器/路线
App.IndexController = Ember.Controller.extend({
productLinks: function(){
return this.get('content');
}.property('model', 'isSelected'),
selectedProduct: function(){
var selectedProd = this.get('productLinks').filterBy('isSelected', true);
return selectedProd[0];
}.property('isSelected'),
isSelected: null
});
我希望这可以演变为仅允许单个选择,但是一旦我可以显示数据,我就会解决这个问题。
答案 0 :(得分:1)
您需要正确定义依赖关系(property
)。您具有计算属性取决于控制器本身的isSelected
属性。您需要依赖于isSelected
的每个成员的productLinks
属性,并使用@each
语法。
selectedProduct: function(){
var selectedProd = this.get('productLinks').filterBy('isSelected', true);
return selectedProd[0];
}.property('productLinks.@each.isSelected')