我正在尝试将依赖项注入数据存储适配器,因此可以从“init”方法开始,但是我遇到了麻烦。我是http://livsey.org/blog/2013/02/10/integrating-pusher-with-ember/中概述的创建“Pusher”对象的方法
Ember.Application.initializer({
name: "pusher",
initialize: function(container, application) {
// Original code from blog post
// use the same instance of Pusher everywhere in the app
container.optionsForType('pusher', { singleton: true });
// register 'pusher:main' as our Pusher object
container.register('pusher', 'main', application.Pusher);
// inject the Pusher object into all controllers and routes
container.typeInjection('controller', 'pusher', 'pusher:main');
container.typeInjection('route', 'pusher', 'pusher:main');
// My guessed addition
container.typeInjection('adapter', 'pusher', 'pusher:main');
container.typeInjection('store', 'pusher', 'pusher:main');
}
});
但这似乎不起作用,如
this.get('pusher');
在适配器的init方法中未定义。实际上,适配器的init方法似乎在Pusher的init方法之前运行。如何在不使用全局变量的情况下将相同的对象同时放入路径和自定义存储适配器中?