首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建角度库:模板中的循环依赖关系

构建角度库:模板中的循环依赖关系
EN

Stack Overflow用户
提问于 2022-04-06 10:49:15
回答 1查看 566关注 0票数 2

我正在努力将一个库从角12升级到角13,这是在另一个角度应用程序中使用的。我有一种情况,组件将以循环方式使用。

示例

one.component.ts:

代码语言:javascript
复制
@Component({
  selector: 'lib-one',
  template: `<div><lib-two></lib-two></div>`,
  styles: [],
})
export class OneComponent {}

two.component.ts:

代码语言:javascript
复制
@Component({
  selector: 'lib-two',
  template: `<div><lib-one></lib-one></div>`,
  styles: [],
})
export class TwoComponent {}

当我试图构建库时,我会得到一个错误,例如:

代码语言:javascript
复制
error NG3003: One or more import cycles would need to be created to compile this component, which is not supported by the current compiler configuration.

处理此问题的一种方法是从tsconfig.lib.prod.json中删除以下代码

代码语言:javascript
复制
  "angularCompilerOptions": {
    "compilationMode": "partial"
  }

还有别的办法可以解决吗?

请注意组件12可以在不同的模块中使用,并根据某些条件使用循环方式。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-05-26 07:29:42

我有同样的问题,你张贴在上面。这里他们建议将这两个组件移动到一个组件中。我不是最有经验的角度,所以如果有人能解释为什么这对我来说,这将是很好的。但是,这很管用。它允许您在部分编译模式下使用ivy进行编译,而不会引发循环依赖错误。这似乎不是最优雅的解决方案,但也许有另一种方式,我无法找到。

也许可以看看,看看它是否对您有帮助,如果您想避免将组件移动到一个共享的component.ts文件中。

希望这能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71765405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档