我正在尝试将旧项目更新到最新版本的 Angular,我发现这一行
constructor(@Inject(forwardRef(() => MapComponent)) private map: MapComponent) {}
导致应用程序卡在Loading...
上。
TSLint 还给了我以下消息:
避免在类中使用 forwardRef(( (no-forward-ref(。
如何重写此构造函数?
听起来您的注入设置中存在循环依赖关系。 forwardRef
可以解决其中一些类型的问题,因为类未被提升,这可能会导致某些类型实例解析错误。您收到tslint
错误,因为样式指南建议你重构应用,使其没有依赖项解析问题,而不是依赖forwardRef
。
如果有人在代码中较早地添加了forwardRef
,那么可能是有原因的 - 因此删除它可能会给您带来不同的错误。我会尝试在代码中提升 MapComponent,然后删除 forwardRef 声明 - 因为我怀疑在这种情况下,其他一些问题是引导程序停滞的根源