如果在Angular 12中注入的服务未定义,可能是因为服务未正确注册或未在需要它的组件中注入。确保在app.module.ts文件中将服务正确注入并添加到providers数组中。例如:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { MyService } from './my.service';
@NgModule({
imports: [BrowserModule],
declarations: [AppComponent],
providers: [MyService], // 将服务添加到providers数组中
bootstrap: [AppComponent]
})
export class AppModule { }
在需要使用服务的组件中,确保正确导入服务,并在构造函数中注入。例如:
import { Component } from '@angular/core';
import { MyService } from './my.service';
@Component({
selector: 'app-my-component',
templateUrl: './my-component.component.html'
})
export class MyComponent {
constructor(private myService: MyService) { // 将服务注入到构造函数中
// 现在myService将可以在组件中使用
}
}
如果服务仍然未定义,请确保名称拼写正确,并尝试重新构建应用程序。