【问题标题】:How to inject multiple service instances in angular components of same service?如何在同一服务的角度组件中注入多个服务实例?
【发布时间】:2018-07-05 06:46:48
【问题描述】:

如何将多个服务实例注入到同一个服务的 Angular 组件中?

例如 - 我的代码中有 dbService,我想调用这个 dbService 实例两次,并在构造函数中用两个不同的值初始化这两个服务。但是当我在组件中创建两个实例时,像

构造函数(私有 db1:dbService,私有 db2:dBservice){}

注入的实例基本相同。如何在 Angular 2+ 或更高版本中实现这样的用例。

【问题讨论】:

标签: angular angular5


【解决方案1】:

您可以在您的服务中创建一个返回该服务实例的方法。像这样 -

public static instance: dbService;
public static getInstance(http: Http): dbService {
    if (!dbService.instance) {
        dbService.instance = new dbService(http);
    }
    return dbService.instance;
}
private constructor(public http: Http) {
}

私人建筑商确保无法从外部调用

然后在您的组件中,您可以根据需要多次调用 getInstance() 方法。

【讨论】:

    猜你喜欢
    • 2017-02-13
    • 2017-04-16
    • 1970-01-01
    • 2013-06-30
    • 1970-01-01
    • 2019-01-17
    • 2014-08-07
    • 2017-07-23
    • 2011-08-17
    相关资源
    最近更新 更多