在子组件Angular 2中定义的表单输入

时间:2017-09-24 20:36:20

标签: forms angular dynamic

我有很大的问题,因为我想检测动态生成表单的变化。当我创建表单并在其中创建具有输入元素的组件时。 NgForm无法检测到此输入,控件为空。 有人知道解决这个问题的方法吗?

@Upadate

我想要检测每个下一个嵌套输入中的更改的示例代码

goo.gl/cYX2Q1

2 个答案:

答案 0 :(得分:0)

您还没有提供任何代码,但我想您的问题。动态创建的组件会破坏数据绑定,这就是问题所在。您必须强制设置输入数据。

检查一下。 https://github.com/angular/angular/issues/6223

this.dcl.loadIntoLocation(ComponentToLoad, this.elementRef, 'host')
                    .then((component) => {
                        component.instance.inputValue = "whatever";                       
                        component.instance.outputValue.subscribe((value) => {
                            // do smth
                        });
                    });

答案 1 :(得分:0)

我明白了,但我不确定这是最好的方式。 在输入时,我设置formGroup并按方法registerControl添加每个输入。

https://plnkr.co/edit/OtCUhxT9B21jNBx2rGZ5