如何在 HomeController 中获取 ApplicationController?
HomeController=Ember.Controller.Extend({
init:function {
// Here I want to get My application controller. Is there any way to get??
}
})
如何在 HomeController 中获取 ApplicationController?
HomeController=Ember.Controller.Extend({
init:function {
// Here I want to get My application controller. Is there any way to get??
}
})
如何在 HomeController 中获取 ApplicationController?
要指定控制器之间的依赖关系(或需求),请使用以下needs
属性:
HomeController=Ember.Controller.Extend({
needs: ['application']
})
现在 Ember 将使应用程序控制器可以从您的 HomeController 内部以controllers.application
. 您可以像使用其他任何东西一样使用它HomeController
,甚至可以从您的模板中访问它:
<!-- inside `home` template -->
{{controllers.application}}
有关控制器需求的更多详细信息,请参阅http://darthdeus.github.com/blog/2013/01/27/controllers-needs-explained/ 。
顺便说一句:ember 控制器很少使用自定义的 init fx。考虑移动任何初始化逻辑来setupController
挂钩路由。
App.HomeController = Ember.Controller.extend({
init: function () {
var applicationController = this.controllerFor('application');
}
});