我有一个Ember 2.3.0应用程序和一个名为ui.js
的服务。我经常在许多路线,控制器和组件上使用此服务。我通常通过这样做手动将服务注入每个路由,控制器和组件:
ui: Ember.inject.service()
然而,继续手动注射它变得非常繁琐。如何自动为所有路由,控制器和组件提供UI服务?
答案 0 :(得分:5)
您可以使用initializer来实现此目的,创建app/initiliazers/ui.js
:
export default {
name: 'ui',
initialize(container, app) {
app.inject('route', 'ui', 'service:ui');
app.inject('controller', 'ui', 'service:ui');
app.inject('component', 'ui', 'service:ui');
}
};