Ember Data 是另一种野兽。将它们存储在应用程序控制器上。或者,如果您不想让应用程序控制器变得混乱,请创建一个设置控制器的单例实例并将它们存储在那里。(同样的事情可以在应用程序控制器上完成,只需使用应用程序而不是设置)。
App.SettingsController = Ember.Controller.extend({
someSettingOn: false,
someOtherSetting: null
});
然后在其他路线/控制器中:
App.AnyRoute = Ember.Route.extend({
anyMethod: function(){
this.controllerFor('settings').toggleProperty('someSettingOn');
}
})
App.AnyController = Ember.Controller.extend({
needs: ['settings'],
anyMethod: function(){
var setting = this.get('controllers.settings.someOtherSetting');
console.log(setting);
},
anyProperty: function(){
if(this.get('controllers.settings.someSettingOn')){
return 'yes';
}
return 'no';
}.property('controllers.settings.someSettingOn')
})