在EmberJs中初始化控制器状态:Route#setupController vs Controller #init

时间:2014-02-25 23:49:37

标签: javascript ember.js controller routes

在EmberJs中似乎有两种替代方法来设置控制器的初始状态:

何时使用一个而不是另一个?它们是等价的吗?

1 个答案:

答案 0 :(得分:8)

一般来说,Controller#init只在创建(通常是单例)控制器时被调用一次,而每次输入路径时调用Route#setupController

任何与模型相关的属性都应该从Route#setupController设置。其他默认设置可以在Controller#init处理。

在我使用的大多数Ember应用中,Route#setupController的使用频率高于Controller#init