通过使用ember路由设置默认状态

时间:2017-08-18 08:48:00

标签: javascript ember.js

我有一些控制器

NewController.extend({
    ors: [],
    ands: [],
    .......

在我的控制器中,ands和另一个变量。

它何时更改路由变量设置默认状态?

是否有这样的钩子,所以设置默认状态?

在angular2中我不知道我必须默认设置变量。在angular2中是zonejs而没有我。

1 个答案:

答案 0 :(得分:1)

控制器是单例,这意味着它不会再次实例化。在Route中有一些钩子你可以重置控制器。但默认情况下,控制器中提供了挂钩。

  1. resetController当模型发生变化或路径退出时,您可以用来重置控制器值的钩子。
  2. 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);
        }
      }
    });
    
    1. deactivate()您可以使用this.controller并将所有属性设置为初始值。