如何在类内使用Angular创建服务(可注入)的实例

时间:2019-05-17 15:06:04

标签: javascript angular typescript dependency-injection ngxs

import { Store } from '@ngxs/store';
export class Service {

    constructor(private _store: Store) {}
}

export abstract class A {
    constructor( private _service: Service ) {  }
}

export class B extends A {
    constructor( private _service: Service ) {
        super(_service);
    }
}

我想避免B(以及B等其他10个类)声明该服务并将其传递给A。 我当时在阅读有关使用ReflectiveInjector的信息,但显然只有当所有提供程序都使用@Injectable()装饰器(商店未提供)时,它才有效。

任何想法是否可行?

1 个答案:

答案 0 :(得分:0)

如果您还插入依赖项,则可以创建一个类的实例:

public store: Store = new Store()    
public service: Service = new Service(this.store);