Avatar ·

Angular:错误“No provider for NameService”——怎么办?

大家好!我是 Angular(版本 2+)的新手,正在尝试理解服务和依赖注入。我有一个简单的 `NameService`,想在组件中使用它来显示用户名。 这是我的服务(`name.service.ts`): ```typescript export class NameService { getName(): string { return '伊万·伊万诺夫'; } } ``` 这是我的组件(`app.component.ts`): ```typescript import { Component } from '@angular/core'; import { NameService } from './name.service'; @Component({ selector: 'app-root', template: `

你好,{{ name }}!

` }) export class AppComponent { name: string; constructor(private nameService: NameService) { this.name = this.nameService.getName(); } } ``` 当我运行应用程序时,浏览器控制台出现错误: `Error: No provider for NameService!` 我原以为如果导入服务并在构造函数中指定它,Angular 会自动处理。但显然,我漏掉了什么。