从阵列控制器向项目控制器发送操作

时间:2014-04-14 22:44:31

标签: ember.js

我有一个简单的ArrayController,它定义了itemController属性。我想从ArrayController向每个项目的后备控制器发送一个动作。我不知道如何“冒泡”这个动作。

1 个答案:

答案 0 :(得分:4)

您可以迭代控制器本身并返回项目控制器。

App.IndexController = Em.ArrayController.extend({
  itemController: 'foo',
  actions:{
    talkToChildren:function(){
      this.forEach(function(itemController){
        itemController.send('foo');
      });
    }
  }
});

App.FooController = Em.ObjectController.extend({
  count: 1,
  actions:{
    foo:function(){
      this.incrementProperty('count');
    }
  }
})

http://emberjs.jsbin.com/fagosifu/1/edit