我目前正处于一个项目中,我们有一个动态的“表单”/内容模型,我们称之为包含字段和占位符的模块,占位符可以包含更多模块,为我们提供递归/灵活的数据模型
现在为了渲染这个,我们创建了一个用于渲染模块的组件,使用不同字段类型的动态渲染,然后使用for循环渲染占位符,这是它自己的组件。
我得到的循环依赖是module.component -> placeholder.component -> module.component
这个快速设置可以在这个plunkr找到: https://plnkr.co/edit/ieV9rjJ8MZLzFpzPaj3L
正在运行ng serve
没有错误,但ng build --prod
没有错误
WARNING in Circular dependency detected:
src/app/module.component.ngfactory.js ->
src/app/placeholder.component.ngfactory.js ->
src/app/module.component.ngfactory.js
我想这是因为ng build --prod
执行了AOT构建,循环依赖项是HTML格式。
然而,代码运行正常,真正的问题是,如果这被认为是不好的实现模式?我不知道如何解决它。
答案 0 :(得分:0)
检查一下。 https://netbasal.com/recursion-in-angular-components-1cd636269b12
尝试在递归结束时添加 * ngIf 。