为什么ember.js使用transitionToRoute进入控制器的init()函数后输入Route的setupController?

时间:2013-08-19 12:44:11

标签: ember.js

  this.transitionToRoute('myProjectDetail',pid);

执行此操作后,输入myProjectDetailController的init()函数;

之后输入myProjectDetailRoute的setupController函数;

为什么?

1 个答案:

答案 0 :(得分:0)

init是Ember内部CoreObject的一部分,并在创建几乎任何内容的实例时被触发。一般情况下,它不是推荐工作流程的一部分,但如果使用,请小心。

注意:如果您对init或类似的框架类重写Ember.View     Ember.ArrayController,请务必致电this._super()     init声明!如果你不这样做,Ember可能没有机会     做重要的设置工作,你会看到你的奇怪行为     应用

每次路径的上下文(基础模型)发生变化时都会调用setupController。