在transitionToRoute之后在活动控制器中运行代码

时间:2013-06-05 07:50:18

标签: ember.js

我通过构建一个简单的番茄钟应用程序来了解emberjs。我的问题是在transitionToRoute发生后在新的活动控制器中运行代码。

这是我创建新的番茄钟记录的地方:

App.PomodorosNewController = Ember.ObjectController.extend({
  createPomodoro: function() {
    this.get('model.transaction').commit();
    this.transitionToRoute('pomodoros.pomodoro', this.get('model'));
  },
});

如您所见,我创建了记录,然后转换到新创建的记录视图。哪个使用这个控制器:

App.PomodorosPomodoroController = Ember.ObjectController.extend({});

我的问题是如何在转换发生后在此控制器中运行代码?这有一种方法可以检测接收控制器中的transitionToRoute吗?

1 个答案:

答案 0 :(得分:2)

您可以在PomodorosPomodoroRoute

中实现setupController功能

每次转换到该路线时都会调用此参数,并可用于设置控制器以及视图所需的任何内容。

App.PomodorosPomodoroRoute = Ember.Route.extend({

  setupController: function(controller, model) {
    this._super.apply(this, arguments);
    //implement your code here
  }


});