Tipe 'FormArray' tidak dapat ditetapkan ke tipe 'any[]'. Properti 'includes' tidak ada di tipe 'FormArray'. di angular6 typescript


Cara mengatasi Kesalahan yang disebutkan di bawah ini:

Tipe 'FormArray' tidak dapat ditetapkan ke tipe 'any[]'. Properti 'includes' tidak ada dalam tipe 'FormArray'. pada baris " this.items=this.AddUserstep2Form.get('items') as FormArray;"

Saya memiliki file ts yang disebutkan di bawah ini. Tolong bantu saya.

import { FormBuilder, FormGroup, Validators ,FormArray} from '@angular/forms';

 AddUserstep2Form: FormGroup;   items: any[] = [];

 ngOnInit() {
    this.AddUserstep2Form = this.fb.group({

      stateCode: ['',Validators.required],
      cityId:['',Validators.required],
      items: this.fb.array([ this.createItem() ])

    })

createItem(): FormGroup {
    return this.fb.group({
      stateCode: '',
      cityId: ''
    });
  }
  addItem(): void {
    this.items = this.AddUserstep2Form.get('items') as FormArray;
    this.items.push(this.createItem());
  }

Jawaban #1

Jika Anda memerlukan properti items pada komponen, cukup ganti tipe saat ini dengan FormArray:

items: FormArray = new FormArray([]);

Jika kamu tidak menggunakannya di mana pun selain metode addItem, maka kamu bisa menghapusnya sepenuhnya dari komponen dan mengubah addItem menjadi seperti ini:

addItem(): void {
    const items = this.AddUserstep2Form.get('items') as FormArray;
    items.push(this.createItem());
}