将实例初始化程序与Ember 1.12.0和Ember CLI一起使用

Ale*_*cia 17 ember.js ember-cli

将我的应用程序更新为Ember 1.12.0后,我注意到许多类似的警告:

lookup是在注册表上调用的.该initializerAPI不再接收一个容器,你应该使用一个instanceInitializer从容器中查找对象.有关详细信息,请参阅http://emberjs.com/guides/deprecations#toc_deprecate-access-to-instances-in-initializers.

这似乎是由container.lookup初始化程序使用引起的,这在旧版本的Ember中很好.

在关于Ember 1.12.0的博客文章中,似乎在基于全球的Ember应用程序中,创建初始化程序和实例初始化程序之间的区别在于

App.initializer({
    ...
});
Run Code Online (Sandbox Code Playgroud)

VS

App.instanceInitializer({
    ...
});
Run Code Online (Sandbox Code Playgroud)

但是,它似乎没有描述如何使用Ember CLI使用实例初始化程序.有谁知道如何使用它们?

编辑:原来所有东西的浏览器插件阻止了原始博客文章中我需要的信息.我会留下这个,以防它对任何人都有用,但在CLI中常规初始化器进入

app/initializers/__my__initializer.js
Run Code Online (Sandbox Code Playgroud)

实例初始化器定义为

app/instance-initializers/__my__initializer.js
Run Code Online (Sandbox Code Playgroud)

编辑2:如果有人因为遇到同样的问题而来到这里,Ember.js repo上的这个问题引用了这个问题,并包含了一个jsfiddle的链接,证明了这个问题.

Ale*_*cia 7

事实证明所有东西的浏览器插件都阻止了原始博客文章中我需要的信息.我会留下这个,以防它对任何人都有用,但在CLI中常规初始化器进入

app/initializers/__my__initializer.js
Run Code Online (Sandbox Code Playgroud)

实例初始化器定义为

app/instance-initializers/__my__initializer.js
Run Code Online (Sandbox Code Playgroud)