属性 'splice' 在类型 'FormArray' 上不存在 angular 6
Property 'splice' does not exist on type 'FormArray' angular 6
如何在第 0 个索引处推送 formArray 中的表单组。它应该被 formArray 中的第 0 个元素替换。
您可以使用 FormArray insert-anchor
control.insert(index: number, control: AbstractControl): void
按照nicraft的建议,使用insert
API on the FormArray
。您可能必须相应地管理模板。
在这里,试一试:
import { Component } from '@angular/core';
import { FormBuilder, FormGroup, FormArray, FormControl } from '@angular/forms';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
form: FormGroup;
constructor(private fb: FormBuilder) {}
ngOnInit() {
this.form = this.fb.group({
array: this.fb.array([])
});
}
addItem() {
const formArray = this.array;
formArray.insert(0, this.fb.control(formArray.length + 1));
}
get array() {
return (<FormArray>this.form.get('array'));
}
}
注意: 这里我只是在 array
FormArray
中添加一个新的 FormControl
并设置 FormArray
的当前长度 + 1 作为它的值。
Here's a Working Sample StackBlitz for your ref.
如何在第 0 个索引处推送 formArray 中的表单组。它应该被 formArray 中的第 0 个元素替换。
您可以使用 FormArray insert-anchor
control.insert(index: number, control: AbstractControl): void
按照nicraft的建议,使用insert
API on the FormArray
。您可能必须相应地管理模板。
在这里,试一试:
import { Component } from '@angular/core';
import { FormBuilder, FormGroup, FormArray, FormControl } from '@angular/forms';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
form: FormGroup;
constructor(private fb: FormBuilder) {}
ngOnInit() {
this.form = this.fb.group({
array: this.fb.array([])
});
}
addItem() {
const formArray = this.array;
formArray.insert(0, this.fb.control(formArray.length + 1));
}
get array() {
return (<FormArray>this.form.get('array'));
}
}
注意: 这里我只是在 array
FormArray
中添加一个新的 FormControl
并设置 FormArray
的当前长度 + 1 作为它的值。
Here's a Working Sample StackBlitz for your ref.