当我在角度ng服务中运行cmd时,应用程序停止加载,我得到下面的错误 .
错误错误:未捕获(在承诺中):错误:StaticInjectorError(AppModule)[AuthService - > Http]:StaticInjectorError(Platform:core)[AuthService - > Http]:NullInjectorError:没有Http的提供者!错误:StaticInjectorError(AppModule)[AuthService - > Http]:StaticInjectorError(Platform:core)[AuthService - > Http]:NullInjectorError:没有Http的提供者!在NullInjector.push ../ node_modules/@angular/core/fesm5/core.js.NullInjector.get(core.js:979)at resolveToken(core.js:1232)
3 回答
静态注入器错误通常在定义类时上升,并且不可用于根模块的执行 . 例如,您有A类是B类和C类的父模块.C类是在B类内部访问的,但C类未定义为父级内的提供者,在这种情况下会弹出此错误 .
对于您的特定情况:AuthService是子项,它未作为AuthModule中的提供程序添加 .
并在提供程序数组中添加AuthService将修复问题 .
您必须在模块/组件级别注册DI . 否则,您可以看到此类错误消息 .
了解有关提供商的更多信息:https://angular.io/guide/providers
尝试将Http更改为HttpClient,如Angular更新指南https://update.angular.io/中所述