在此情况下,问题通常是Angular依赖注入系统的故障,可以尝试使用Injector.get手动注入服务解决问题。以下是一个示例:
import { Component, Injector } from '@angular/core'; import { MyService } from 'my-library';
@Component({ selector: 'app-my-component', templateUrl: './my-component.component.html', styleUrls: ['./my-component.component.css'] }) export class MyComponentComponent { myService: MyService;
constructor(private injector: Injector) { this.myService = this.injector.get(MyService); this.myService.myObservable.subscribe(data => { console.log(data); }); } }
这么做应该会解决服务回调未被调用的问题。