我有一些控制器
NewController.extend({
ors: [],
ands: [],
.......
在我的控制器中,ands和另一个变量。
它何时更改路由变量设置默认状态?
是否有这样的钩子,所以设置默认状态?
在angular2中我不知道我必须默认设置变量。在angular2中是zonejs而没有我。
答案 0 :(得分:1)
控制器是单例,这意味着它不会再次实例化。在Route中有一些钩子你可以重置控制器。但默认情况下,控制器中提供了挂钩。
resetController
当模型发生变化或路径退出时,您可以用来重置控制器值的钩子。import Ember from 'ember'; export default Ember.Route.extend({ resetController(controller, isExiting, transition) { //isExiting is true on leaving the route. if (isExiting) { controller.set('page', 1); } } });
deactivate()
您可以使用this.controller
并将所有属性设置为初始值。