Angular动态表单项目迁移-'input'没有初始化程序和构造函数,TypeT|undefined的另一个错误
创始人
2024-10-24 14:01:13
0

这个问题通常发生在将 Angular 旧版代码升级到新版的过程中。原因是在旧版中,可能会在构造函数中初始化值,但在新版中,它会优先使用使用输入属性进行初始化,然后才会执行构造函数。解决方法是将输入属性值初始化放在构造函数之前,在组件中添加 ngAfterViewInit() 生命周期钩子方法。以下是示例代码:

import { AfterViewInit, Component, Input } from '@angular/core';
import { FormGroup } from '@angular/forms';

@Component({
  selector: 'app-dynamic-form',
  template: `
    
`, }) export class DynamicFormComponent implements AfterViewInit { @Input() fields: any[]; form: FormGroup; ngAfterViewInit() { // Initialize input values before the constructor is executed this.fields = this.fields || []; // Initialize the form after the input values this.form = this.createFormGroup(); } private createFormGroup() { const group = new FormGroup({}); this.fields.forEach((field) => { const control = field.required ? new FormControl(field.value || '', Validators.required) : new FormControl(field.value || ''); group.addControl(field.name, control); }); return group; } }

相关内容

热门资讯

今日重大通报!德州私人局脚本,... 今日重大通报!德州私人局脚本,aa poker辅助,切实是真的有挂(有挂技巧)1、辅助软件下载优化,...
刚刚!wepoker免费透视,... 刚刚!wepoker免费透视,德扑软件,切实确实有挂(有挂方式)在进入德扑软件软件靠谱后,参与本局比...
我来教教你!约局吧作弊脚本,智... 我来教教你!约局吧作弊脚本,智星德州有脚本吗,果然真的有挂(有挂功能)1、免费脚本咨询教程、免费脚本...
现有关情况通报如下!wepok... 现有关情况通报如下!wepoker如何设置透视,德扑之星怎么设置埋牌,好像存在有挂(有挂总结)1、金...
揭秘攻略!wpk辅助是什么,a... 揭秘攻略!wpk辅助是什么,aapoker脚本怎么用,果然有挂(有挂教学)辅助器是一种具有地方特色的...
技巧辅助挂!wepoker游戏... 技巧辅助挂!wepoker游戏的安装教程,德扑之星辅助工具如何打开,本来真的是有挂(有挂秘诀)德扑之...
分享实测!wepoker挂,h... 分享实测!wepoker挂,hhpoker辅助,一贯是有挂(确实有挂)1)有没有挂:进一步探索有辅助...
近期!wepoker私局辅助,... 近期!wepoker私局辅助,德普之星怎么开辅助,本来存在有挂(有挂方法)1、德普之星怎么开辅助免费...
玩家必知教程!wepoker辅... 玩家必知教程!wepoker辅助是真的吗,hhpoker是内部控制吗,竟然真的是有挂(有挂方略)1、...
据权威媒体报道!newpoke... 据权威媒体报道!newpoker脚本,德扑之心免费透视,一直真的是有挂(有挂方略)1、每一步都需要思...