ember.js:每次访问控制器时执行操作

ember.js:每次访问控制器时执行操作,ember.js,Ember.js,在我的Ember应用程序中,我使用一个全局变量来跟踪一个重要的状态(无论用户是否打开了一个项目)。在绘制其他视图(如导航菜单)时,它用作条件 现在我有控制器设置全局变量,如下所示: App.ProjectsOverviewController = Ember.ObjectController.extend needs: ["application"] init: -> @set("controllers.application.isProjectSet", true) 但

在我的Ember应用程序中,我使用一个全局变量来跟踪一个重要的状态(无论用户是否打开了一个项目)。在绘制其他视图(如导航菜单)时,它用作条件

现在我有控制器设置全局变量,如下所示:

App.ProjectsOverviewController = Ember.ObjectController.extend
  needs: ["application"]
  init: ->
    @set("controllers.application.isProjectSet", true)
但这只在用户第一次访问该控制器时发生。我怎么能让这种情况每次都发生,而不仅仅是在初始的
init


或者,如果有人能在Ember提供的工具中提出更好的方法,我当然会非常感激。

经过更多的实验后,我认为在以下设备上执行此操作会有效:

App.ProjectsOverviewRoute = Ember.Route.extend
  model: (params) ->
    @store.find("project", params.project_id)
  activate: ->
    @controllerFor("application").set("isProjectSet", true)