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