在 Angular 中,如果你使用依赖注入来获取一个服务实例,但是服务没有被正确地分配给对象实例,可能会出现这个问题。这通常发生在以下几种情况下:
import { Component } from '@angular/core';
import { MyService } from './my.service';
@Component({
selector: 'app-my-component',
template: '...',
})
export class MyComponent {
constructor(private myService: MyService) {
// ...
}
}
providers
数组中注册服务。确保你在使用服务的模块中将服务添加到 providers
数组中。import { NgModule } from '@angular/core';
import { MyService } from './my.service';
@NgModule({
declarations: [ ... ],
imports: [ ... ],
providers: [ MyService ], // 将服务添加到 providers 数组中
})
export class MyModule { }
providers
数组中注册了服务。如果你在多个模块中注册了同一个服务,Angular 可能会创建多个不同的服务实例。如果你遇到了以上问题,可以根据具体情况来解决。