聽起來像服務的候選人。嘗試運行
ember g service settings
從您的項目的根目錄。現在,您可以共享的屬性添加到您的新服務:
// app/services/settings.js
import Ember from 'ember';
export default Ember.Object.extend({
appName: 'my-app'
});
的初始化還將爲您創建,它控制你怎麼能在你的應用程序訪問您的服務:
// app/initializers/settings.js
export default {
name: 'settings',
initialize: function(container, app) {
app.inject('route', 'settings', 'service:settings');
}
};
,你可以默認情況下,您的服務可用於所有路線。訪問這樣的:
// app/routes/application.js
import Ember from 'ember';
export default Ember.Route.extend({
activate: function() {
this.get('settings.appName'); // my-app
}
});
爲了使控制器提供服務,只需注入在初始化服務:
app.inject('controller', 'settings', 'service:settings');
它可以容易濫用服務的傾銷地您想在整個應用程序中共享的數據。謹慎使用它們。特別是,像默認頭像目錄可能更適合作爲模型屬性。
http://stackoverflow.com/questions/23718384/where-do-you-place-a-simple-variable-in-the-ember-app-kit-file-structure-so-it-c/23729225 #23729225這也適用於ember-cli – blessenm