我在索引控制器中有一些控制器属性。我想知道如何在用户更改路径时更改这些属性的值。由于索引有一个出口,索引路由属性仍然存在于不同的路径上,这就是我想要的。
基本上当路由改变时,我想重置索引控制器的属性。我怎么做?
答案 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');
}
}
});