通过 ember 路由设置默认状态

Set default state by routing with ember

我有一些控制器

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

在我的控制器中 ors、ands 和另一个变量发生变化。

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

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

在 angular2 中,我不知道什么时候必须默认设置变量。在 angular2 中是 zonejs 并且在没有我的情况下完成。

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

  1. 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);
    }
  }
});
  1. deactivate() 您可以在其中使用 this.controller 并将所有属性设置为初始值。