我有一个应该是单身的服务,需要从多个视图访问。通过在providers
中的app.components.ts
数组中添加服务,我可以从大多数页面访问服务的单例实例。
但是,如果使用ModalController
将组件作为模态加载,则会失败。它给了我No provider for XYZ
错误。
在ModalController
加载的组件中使用单件服务需要做什么?
答案 0 :(得分:1)
所以,我能够按如下方式工作:
<强> 1。创建服务
@Injectable() export class MyService { ... }
<强> 2。在app.module.ts
数组
providers
中添加服务
providers: [{provide: ErrorHandler, useClass: IonicErrorHandler}, MyService]
第3。在任何Page
或Modal
@Component(...)
export class MyModalOrPage {
constructor(public service: MyService) { ... }
}
中提琴!单页服务实例可用于整个页面和模态。奇迹般有效! =)