【问题标题】:Is there any way to make an Ember service available to all routes, controllers and components?有什么方法可以让所有路由、控制器和组件都可以使用 Ember 服务?
【发布时间】:2016-01-28 08:35:40
【问题描述】:

我有一个 Ember 2.3.0 应用程序和一个名为 ui.js 的服务。我经常在许多路由、控制器和组件中使用这项服务。我通常通过这样做将服务手动注入每个路由、控制器和组件:

ui: Ember.inject.service()

但是,继续手动注入它变得非常乏味。如何自动使 UI 服务可用于所有路由、控制器和组件?

【问题讨论】:

    标签: ember.js


    【解决方案1】:

    您可以使用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');
      }
    };
    

    【讨论】:

      猜你喜欢
      • 2016-04-24
      • 2014-08-30
      • 1970-01-01
      • 1970-01-01
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-04
      相关资源
      最近更新 更多