设置初始值 Angular 2 反应式数组

2023-12-23

我正在尝试设置 Angular 2 反应形式 formArray 对象的初始值。

尽管用于设置表单值的 json 对象包含具有多个条目的数组值,但仅显示第一个条目,并且“form.value”也仅显示第一个条目。

我正在使用语法(<FormGroup>this.myForm).patchValue(value, { onlySelf: true });在表单上设置初始值。

这是一个演示这个问题的笨蛋:https://plnkr.co/edit/j1S80CmPBF1iHI5ViEia?p=preview https://plnkr.co/edit/j1S80CmPBF1iHI5ViEia?p=preview

我使用了来自的例子https://scotch.io/tutorials/how-to-build-nested-model-driven-forms-in-angular-2 https://scotch.io/tutorials/how-to-build-nested-model-driven-forms-in-angular-2创建 plunker。

有什么想法我做错了什么吗?


您正在设置addresses作为形式数组并在initAddress()方法你只返回一个元素。 如果您添加第二个调用addressesarray 你得到第二个地址。

this.myForm = this._fb.group({
  name: ['', [Validators.required, Validators.minLength(5)]],
  addresses: this._fb.array([
    this.initAddress(),
    this.initAddress()
  ])
});

这听起来有点愚蠢,但它会返回数组中定位的元素,如果超过数组中的元素数量,您将得到一个空元素。

希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设置初始值 Angular 2 反应式数组 的相关文章