【发布时间】:2022-06-27 07:54:37
【问题描述】:
一两个星期前,我将 Angular 升级到了 Web 应用程序中的最新版本,该版本过去可以顺利运行。现在,每次我们进入登录页面(其中注入了 [once-working] AuthService),浏览器都会返回如下错误消息:
ERROR Error: Uncaught (in promise): NullInjectorError: R3InjectorError(n)[AuthService -> _w -> _w -> _w]: NullInjectorError: No provider for _w! NullInjectorError: R3InjectorError(n)[AuthService -> _w -> _w -> _w]: NullInjectorError: No provider for _w!
起源被追溯到 polyfill.js。我读到它与最新的 webpack 升级有关,但我找不到有关如何修复它的信息。到底发生了什么?我该如何解决这个问题?
当我关闭优化时,我得到:
Error: Uncaught (in promise): NullInjectorError: R3InjectorError(AppModule)[AuthService -> Auth -> Auth -> Auth]: NullInjectorError: No provider for Auth!
这只是稍微提供更多信息。
【问题讨论】:
-
您可能希望共享一些登录代码(构造函数及其类装饰器)和/或提供 AuthService 的模块。
-
你试过forwardRef吗?如果那不起作用,您是否尝试注入 Injector,然后仅在使用时才解决它?听起来就像是循环注射
标签: angular dependency-injection