Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 构建一个反应式表单,其中字段和;是否在子组件中填充值?_Angular_Reactive Programming_Observable_Angular2 Forms - Fatal编程技术网

Angular 构建一个反应式表单,其中字段和;是否在子组件中填充值?

Angular 构建一个反应式表单,其中字段和;是否在子组件中填充值?,angular,reactive-programming,observable,angular2-forms,Angular,Reactive Programming,Observable,Angular2 Forms,我正在尝试构建一个嵌套在多个组件中的被动表单。 我一直在到处寻找这样的东西: 父组件:顶部包含 子组件位于父组件内部。它包含用于在表单的formGroupName上循环的*ngs 孙子组件位于子组件内部。这就是字段和值的位置(formControlName) 我需要父组件中的this.form.valueChanges按预期工作并报告更改数据 我希望每个组件获取其所需的数据。在我的例子中,字段和数据来自Firebase 我没能找到任何像这样的东西。只有内置在具有经典地址数组的组件上的表单。并

我正在尝试构建一个嵌套在多个组件中的被动表单。 我一直在到处寻找这样的东西:

  • 父组件:顶部包含
  • 子组件位于父组件内部。它包含用于在表单的
    formGroupName
    上循环的*ngs
  • 孙子组件位于子组件内部。这就是字段和值的位置(
    formControlName
我需要父组件中的
this.form.valueChanges
按预期工作并报告更改数据

我希望每个组件获取其所需的数据。在我的例子中,字段和数据来自Firebase

我没能找到任何像这样的东西。只有内置在具有经典地址数组的组件上的表单。并且表单始终构建在ParentComponent中

问题:是否可以构建一个表单,其中字段和值填充在儿童组件中?

form.component.ts


表单字段集.component.ts


表单值.component.ts



{{value.$key}}


我找到了解决方案。
我只需要在子组件中移动init值。

据我所知,唯一的方法是使用ControlValueAccessor。我应该把它放在2个组件上,而不是3个组件上,这样会更容易。知道我只使用复选框,有什么建议吗?