1

我想存储与任何路线关联的自定义参数;是否可以将它们存储在路由器地图中?就像是:

this.route('aboutUs', {path: 'about-us', langIndex: '1'});

然后如何从控制器中恢复 langIndex 值?

4

1 回答 1

2

路由器映射并非旨在存储您稍后在控制器中需要的瞬态数据。对于像您的用例这样的工作,您应该这样做:

App.AboutUsRoute = Ember.Route.extend({
  langIndex: '1'
  ...
});

然后在路由对应的控制器中,您可以获得如下变量:

App.AboutUsController = Ember.ObjectController.extend({
  someMethod: function() {
    // get here the variable stored in your route
    // this.get('target') always refers to the controller
    // corresponding route
    this.get('target').get('langIndex');
  }
});

希望能帮助到你。

于 2013-08-19T17:05:33.363 回答