Angular 9 无法实例化循环依赖!申请参考

mil*_*ll3 5 ng-bootstrap angular angular9

从 Angular 8 更新到 Angular 9 导致循环依赖错误

\n\n

我刚刚升级到 Angular 9,并且修复了所有编译错误。现在我收到一个与循环依赖相关的错误,但我无法追踪该错误。

\n\n
Error: Cannot instantiate cyclic dependency! ApplicationRef\nat throwCyclicDependencyError (core.js:8072)\nat R3Injector.hydrate (core.js:17049)\nat R3Injector.get (core.js:16803)\nat injectInjectorOnly (core.js:940)\nat \xc9\xb5\xc9\xb5inject (core.js:950)\nat Object.NgbModalStack_Factory [as factory] (ng-bootstrap.js:6262)\nat R3Injector.hydrate (core.js:17053)\nat R3Injector.get (core.js:16803)\nat injectInjectorOnly (core.js:940)\nat Module.\xc9\xb5\xc9\xb5inject (core.js:950)\n
Run Code Online (Sandbox Code Playgroud)\n\n

如果我查看 ng-bootstrap.js:6262 代码块,它看起来像是指的是 NgbModal 组件

\n\n
    NgbModalStack.\xc9\xb5prov = \xc9\xb5\xc9\xb5defineInjectable({ factory: function NgbModalStack_Factory() { return new NgbModalStack(\xc9\xb5\xc9\xb5inject(ApplicationRef), \xc9\xb5\xc9\xb5inject(INJECTOR), \xc9\xb5\xc9\xb5inject(DOCUMENT), \xc9\xb5\xc9\xb5inject(ScrollBar), \xc9\xb5\xc9\xb5inject(RendererFactory2), \xc9\xb5\xc9\xb5inject(NgZone)); }, token: NgbModalStack, providedIn: "root" });\nNgbModalStack = __decorate([ __param(2, Inject(DOCUMENT))\n], NgbModalStack);\n
Run Code Online (Sandbox Code Playgroud)\n\n

这可能与特定错误没有直接关系,但我看不到任何可能导致此错误的内容。\n任何人都知道可能导致此错误的原因或者它可能是 Angular Bootstrap 库中的错误吗?

\n

小智 1

删除任何正在注入NgbModal服务的服务。在应用程序初始化期间

就我而言,我将其注入加载程序服务中。

所以我从应用程序初始化程序中删除了加载程序服务并将加载程序服务注入到 app.component.ts 中

有效。