我有一个 Ember 应用程序,需要根据其运行的域使用不同的数据。例如,在domain1.com 上,网站标题可能是“Domain 1 Website”,而对于domain2.org,网站标题可能是“Cool Site!”
我需要能够使用路由、 Controller 和模板中的数据。
到目前为止我的初始化程序:
import { request } from 'ic-ajax';
export function initialize(container, application) {
var domain = document.location.host;
return request('http://api/sites?domain=' + domain, {} ).then(function(response) {
// make the response available to routes, controllers and templates
});
}
export default {
name: 'site-data',
initialize: initialize
};
最佳答案
第二个例子
Ember.Application.initializer({
name: 'logger',
initialize: function(container, application) {
var logger = {
log: function(m) {
console.log(m);
}
};
application.register('logger:main', logger, { instantiate: false });
application.inject('route', 'logger', 'logger:main');
}
});
下面的解释向您展示了如何使用 .inject
使您的变量、服务或函数之一可用于应用程序中您需要的任何对象。
关于javascript - 使用 Ember 初始化器设置域相关数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33226703/