У вас также может быть метод установки, который нужно будет вызывать после получения правильной ссылки.
export class MyClass
{
private cd: ChangeDetectorRef;
constructor(data: any ) {
this.data = data;
}
setChangeDetector(cd: ChangeDetectorRef )
{
this.cd = cd;
}
}
Другие опции
Это , а не внедрение зависимостей, но вы также можете назначить глобальную ссылку на ChangeDetectorRef
, когда ваш основной модуль инициализируется
module.ts
import {ChangeDetectorRef} from '@angular/core';
export let CDInstance: ChangeDetectorRef;
export class AppModule
{
constructor(private cd: ChangeDetectorRef)
{
CDInstance = this.cd;
}
}
myclass.ts
import {InjectorInstance} from './app.module';
export class MyClass
{
private cd: ChangeDetectorRef;
constructor(data: any)
{
this.data = data;
this.cd = CDInstance;
}
}