Angular的ReactiveForm与递归模板不识别父级formGroup指令。
创始人
2024-10-24 09:02:01
0

当使用Angular的ReactiveForm和递归模板时,父级formGroup指令可能不会被识别。这是因为递归模板会创建多个嵌套的formGroup指令,导致Angular无法正确识别父级formGroup指令。

要解决这个问题,可以使用ControlContainer类来手动注入父级formGroup指令。以下是一个示例代码:

  1. 创建一个RecursiveFormComponent组件,包含一个递归模板和ReactiveForm:
import { Component, Input } from '@angular/core';
import { ControlContainer, NgForm } from '@angular/forms';

@Component({
  selector: 'app-recursive-form',
  template: `
    
`, viewProviders: [{ provide: ControlContainer, useExisting: NgForm }] }) export class RecursiveFormComponent { @Input() formGroup: FormGroup; @Input() children: FormGroup[]; }
  1. 在父级组件中使用RecursiveFormComponent:
import { Component } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';

@Component({
  selector: 'app-parent-component',
  template: `
    

Parent Component

` }) export class ParentComponent { formGroup: FormGroup; children: FormGroup[]; constructor(private formBuilder: FormBuilder) { this.formGroup = this.formBuilder.group({ name: ['', Validators.required], children: [[]] }); this.children = []; } }

通过使用ControlContainer类来注入父级formGroup指令,可以确保递归模板中的每个FormGroup都能正确识别父级formGroup指令。

相关内容

热门资讯

辅助透视!wepoker辅助插... 辅助透视!wepoker辅助插件功能,wepoker私人局怎么玩(透视)技巧教程(有挂辅助)1、很好...
透视软件!wepoker插件程... 透视软件!wepoker插件程序激活码,购买wepoker模拟器(透视)技巧教程(有挂插件)1、打开...
透视软件!wepoker有透视... 透视软件!wepoker有透视底牌吗,wepoker插件功能辅助器(透视)线上教程(有挂揭秘)1、上...
透视软件!we-poker软件... 透视软件!we-poker软件,wepoker脚本下载(透视)可靠技巧(有挂辅助);1、游戏颠覆性的...
透视辅助!wepoker怎么设... 透视辅助!wepoker怎么设置盖牌,wepoker怎么开辅助(透视)总结教程(有挂黑科技)1、完成...
透视好友房!wepoker有机... 透视好友房!wepoker有机器人吗,wepoker辅助器有哪些功能(透视)科技教程(有挂工具)1、...
透视美元局!wepoker透视... 透视美元局!wepoker透视脚本免费下载,wepoker线上大神(透视)玩家教程(有挂教程);1、...
透视私人局!wepoker免费... 透视私人局!wepoker免费脚本,wepoker能不能透视(透视)AI教程(有挂辅助)1.wepo...
透视辅助!wepoker的辅助... 透视辅助!wepoker的辅助器,wepoker-h5下载(透视)透明挂教程(有挂脚本);1、进入到...
透视中牌率!htx矩阵wepo... 透视中牌率!htx矩阵wepoker辅助,wepoker怎么挂飞机(透视)德州论坛(有挂工具);1、...