在较新的 Angular 版本中替代 forwardRef



我正在尝试将旧项目更新到最新版本的 Angular,我发现这一行

constructor(@Inject(forwardRef(() => MapComponent)) private map: MapComponent) {}

导致应用程序卡在Loading... 上。

TSLint 还给了我以下消息:

避免在类中使用 forwardRef(( (no-forward-ref(。

如何重写此构造函数?

听起来您的注入设置中存在循环依赖关系。 forwardRef可以解决其中一些类型的问题,因为类未被提升,这可能会导致某些类型实例解析错误。您收到tslint错误,因为样式指南建议你重构应用,使其没有依赖项解析问题,而不是依赖forwardRef

如果有人在代码中较早地添加了forwardRef,那么可能是有原因的 - 因此删除它可能会给您带来不同的错误。我会尝试在代码中提升 MapComponent,然后删除 forwardRef 声明 - 因为我怀疑在这种情况下,其他一些问题是引导程序停滞的根源

相关内容

  • 没有找到相关文章

最新更新