当我在角度ng服务中运行cmd时,应用程序停止加载,我收到以下错误。
错误错误:未捕获(在承诺中):错误: StaticInjectorError(AppModule)[AuthService - > HTTP]: StaticInjectorError(Platform:core)[AuthService - > HTTP]: NullInjectorError:没有Http的提供者! 错误:StaticInjectorError(AppModule)[AuthService - > HTTP]: StaticInjectorError(Platform:core)[AuthService - > HTTP]: NullInjectorError:没有Http的提供者! at NullInjector.push ../ node_modules/@angular/core/fesm5/core.js.NullInjector.get (core.js:979) at resolveToken(core.js:1232)
答案 0 :(得分:6)
您必须在模块/组件级别注册DI。否则,您可以看到此类错误消息。
import { NgModule } from '@angular/core';
import { AuthService } from 'PATH';
@NgModule({
providers: [AuthService],
})
export class YOURMODULE{
}
答案 1 :(得分:0)
当定义了一个类并且根模块无法执行该类时,静态注入器错误通常会出现。例如,您有Class A是Class B和Class C的父模块。正在Class B内部访问Class C,但未将Class C定义为父内部的提供者,在这种情况下会弹出此错误。
对于您的特定情况:AuthService是子项,并且不会将其添加为AuthModule中的提供者。
从'./Path'导入{AuthService};
并在providers数组中添加AuthService将解决问题。
答案 2 :(得分:-1)
尝试按照Angular Update指南中所述将Http更改为HttpClient https://update.angular.io/