如何从分布式模块导入Angular服务?

时间:2018-03-03 05:27:50

标签: angular

我正在尝试创建一个可分发的(NPM使用ng-packagr) Angular服务。我已经创建了服务和模块。我正在使用

export class MyModule {
    static forRoot(configs: MyConfigs): ModuleWithProviders {
      return {
        ngModule: MyModule,
        providers: [MyService, { provide: 'configs', useValue: configs }]
      };
    }
  }

因此,用户可以在app.module中配置服务。

import { MyModule } from 'themodule';

//...

imports: [
 MyModule.forRoot({/*configs*/});

一切正常。

但我必须遗漏一些东西。

如何导入服务以便他们可以引用服务以进行注入。

import { MyService } from 'themodule';

constructor(private myservice: MyService) { }

我知道我在做一些愚蠢的事情。我的意思是服务导入app.module就好了。

更新

亲爱的上帝帮帮我!

我所要做的就是将其添加到public_api.d.ts

中的导出中

我想我的脑袋在" 它必须复杂! "模式。

除非有人有另一种[适当的角度中心式]答案,否则这是我的解决方案。

0 个答案:

没有答案