离开路径ember.js时重置控制器属性

时间:2014-06-16 18:10:30

标签: javascript ember.js router

我在索引控制器中有一些控制器属性。我想知道如何在用户更改路径时更改这些属性的值。由于索引有一个出口,索引路由属性仍然存在于不同的路径上,这就是我想要的。

基本上当路由改变时,我想重置索引控制器的属性。我怎么做?

1 个答案:

答案 0 :(得分:4)

来自不同的路线:

var controller = this.controllerFor('index');
controller.set('foo', 'bar');

来自不同的控制器:

App.FooController = Em.Object.extend({
  needs:'index',
  someFunc: function(){
    var controller = this.get('controllers.index');
    controller.set('foo', 'bar');
  }
});

转型

App.IndexRoute = Em.Route.extend({
  actions: {
    willTransition: function(){
      this.controller.set('foo', 'bar');
    }
  }
});