我有一个单一的Ember应用程序,它需要使用不同的数据,这取决于它运行的域。例如,在domain1.com上,站点标题可能是"Domain 1 Website",而对于domain2.org,站点标题可能是"Cool Site!“
我需要能够在路由,控制器和模板中使用数据。
到目前为止我的初始化器:
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
};
发布于 2015-10-20 11:23:06
如果你看一下文档:http://guides.emberjs.com/v1.10.0/understanding-ember/dependency-injection-and-service-lookup/#toc_dependency-injection-with-code-register-inject-code
第二个例子
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使您的变量、服务或函数之一可供应用程序中所需的任何对象使用。
https://stackoverflow.com/questions/33226703
复制相似问题