首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >递归ReactiveForm在模板内找不到formGroups

递归ReactiveForm在模板内找不到formGroups
EN

Stack Overflow用户
提问于 2019-05-17 04:20:28
回答 1查看 844关注 0票数 1

我正在使用元数据对象动态创建一个非常大的表单(大约400个输入,尽管在stackblitz示例中显示了一个小示例)。我需要使用元数据结构将特定于输入的信息传递给输入(即输入类型、选择选项、步长等)。当我的html ng-template在内部被递归调用,并且随后,父表单不被识别。当我超过初始递归级别时,ReactiveForm无法跟踪到所需的formGroup。

从本质上讲,formGroupName似乎无法遍历递归模板的各个级别。

我已经旋转我的轮子一段时间,试图让这个功能,但无济于事。

我有一个stackblitz示例来说明我想要做的事情。

https://stackblitz.com/edit/angular-jndvkb

任何帮助找出为什么通过FormGroup的路径不能在模板中工作,我们将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-18 01:55:12

无论出于什么原因,formGroupName都不能进入ng容器。为了解决这个问题,我将模板移到了ng- formGroupName的顶部,并将其更改为formGroup。将formGroup实例传递给ng-template,并在其中创建嵌套/递归表单。

解决方案堆栈闪电战:https://stackblitz.com/edit/angular-k9saz2

我仍然不知道问题的根本原因,但现在我有了一个从初始formGroup递归生成的表单,并将所有验证器绑定到每个输入。我还可以访问元数据结构,以便在需要时呈现输入。

我还可以轻松地添加/删除/编辑输入,只需更改构造函数中的初始formGroup声明即可。这使得以后的维护非常容易。

对我来说,下一步是将所有的formGroup和元数据生成转移到一个服务中,并将它们作为输入传递到这个组件中,这样我就可以在不同的表单组中重用这个模板。

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

https://stackoverflow.com/questions/56176052

复制
相关文章

相似问题

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