her*_*rom 5 ember.js ember-app-kit
保持简短:
是否可以Resolver在Ember.Application.create()块外设置应用程序?
理想情况下,我想设置Resolver一个Ember.Application.initializer#initialize()函数.就像是:
import CustomResolver from 'appkit/utils/resolver/custom';
import CustomAjax from 'appkit/utils/ajax/custom';
Ember.Application.initializer({
name: 'resolver_setup',
initialize: function (container, application) {
// NOTE: For an unknown reason (unknown to me!) I can't import CustomAjax in CustomResolver...
application.set('Resolver', CustomResolver.create({ajax: CustomAjax.create({})});
}
});
Run Code Online (Sandbox Code Playgroud)
这可能吗?
PS:我需要自定义解析器的原因是,我从服务器获取所有模板,而不是在应用程序启动时将它们提供给用户.因此,我正在扩展ember-jj-abrams-resolverEAK中默认使用的...
我不认为初始化器可以帮助您设置自定义解析器,根据源代码,container它比任何初始化器都更早设置,解析器是容器的属性。
您Resolver在初始值设定项内设置了该属性,但这不会被设置容器的过程使用。我认为正确的方法是在Ember.Application创建.ResolverEmber.Application
Ember.Application.reopenClass({
Resolver: YOUR_CUSTOM_RESOLVER_NAME
});
Ember.Application.create({...});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
202 次 |
| 最近记录: |