如何在Ember中访问索引控制器内的另一个控制器?
App.IndexController = Ember.ArrayController.extend({
doSomethingToAnotherController: function(params) {
// how do I access another controller other than the index controller here?
}
});
答案 0 :(得分:1)
您可以使用needs
将一个控制器连接到另一个控制器:
App.OtherController = Ember.ObjectController.extend({
//... code here
});
App.IndexController = Ember.ArrayController.extend({
needs: ['other'],
doSomethingToAnotherController: function() {
//you can access the 'other' controller via get for example:
this.get('controllers.other').doSomething();
}
});
这是一个工作小提琴:http://jsfiddle.net/e2fXn/
但是,在{{#each}}
循环中使用时,似乎有an open issue这会破坏(这可能与您的IndexController
扩展ArrayController
后相关)。
希望这有帮助!