来自Ember JS的来源
ControllerMixin: -
transitionToRoute: function() {
// target may be either another controller or a router
var target = get(this, 'target'),
method = target.transitionToRoute || target.transitionTo;
return method.apply(target, arguments);
}
如果我在控制器中执行动作处理,我的目标与控制器相同,导致此方法进行递归并最终给出"最大调用堆栈达到错误",I我不明白这段代码基本上是做什么的,为什么他们写的" //目标可能是另一个'控制器..."因为当我们在控制器中处理动作时,目标应该是控制器本身。