我正在尝试创建一个可分发的(使用ng-packagr的NPM)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
的出口中
我想我的脑袋在“它必须复杂!”模式。
除非有人有另一种[适当的角度中心式]答案,否则这是我的解决方案。
亲爱的上帝帮助我!
我所要做的就是将它添加到public_api.d.ts
的出口中
我想我的脑袋在“它必须复杂!”模式。
......并不复杂。