在Angular 2中,当你遇到错误NullInjectorError: No provider for Http
时,这意味着你没有正确配置HTTP模块的提供者。
解决这个错误的方法是在你的应用程序中为HTTP模块提供正确的提供者。下面是一个示例解决方法:
app.module.ts
)中导入HTTP模块:import { HttpClientModule } from '@angular/common/http';
@NgModule({
imports: [
HttpClientModule,
// ...
],
// ...
})
export class AppModule { }
import { HttpClient } from '@angular/common/http';
@Injectable()
export class MyService {
constructor(private http: HttpClient) { }
// ...
}
providers
数组中添加以下代码:import { HttpClientModule } from '@angular/common/http';
@NgModule({
imports: [
HttpClientModule,
// ...
],
providers: [
// ...
HttpClient,
// ...
],
})
export class AppModule { }
以上是一个简单的解决方案,可以解决NullInjectorError: No provider for Http
错误。请确保你的Angular版本与这些示例代码相匹配,并根据实际情况进行相应的调整。