首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取ApplicationController?

如何获取ApplicationController?
EN

Stack Overflow用户
提问于 2013-02-19 11:14:51
回答 2查看 6.2K关注 0票数 9

如何在我的HomeController中获取ApplicationController?

代码语言:javascript
复制
 HomeController=Ember.Controller.Extend({
   init:function {
        // Here I want to get My application controller. Is there any way to get??
   }

 })
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-19 14:39:50

如何在我的HomeController中获得ApplicationController?

若要指定控制器之间的依赖关系(或需要),请使用needs属性:

代码语言:javascript
复制
HomeController=Ember.Controller.Extend({
  needs: ['application']
})

现在,Ember将使应用程序控制器可以作为controllers.application从HomeController内部访问。您可以像使用任何其他HomeController一样使用它,甚至可以从您的模板访问它:

代码语言:javascript
复制
<!-- inside `home` template -->
{{controllers.application}}

有关控制器需求的更多详细信息,请参阅http://darthdeus.github.com/blog/2013/01/27/controllers-needs-explained/

顺便说一句: ember控制器很少使用自定义的init fx。请考虑将任何初始化逻辑移至路由上的setupController钩子。

票数 17
EN

Stack Overflow用户

发布于 2013-02-19 12:46:50

代码语言:javascript
复制
App.HomeController = Ember.Controller.extend({
  init: function () {
    var applicationController = this.controllerFor('application');
  }
});
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14949235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档