동적으로 생성 된 FormArray
이 아래 코드에서 생성됩니다.각도 : 동적으로 생성 된 FormArray가 많은 FormGroup을 구성원으로 사용하여 페이지가 응답하지 않음
this.priceListForm.addControl('priceListLines', this.formBuilder.array(this.priceListDetails.priceListLines.map(item => this.buildPriceListItem(item.listLinesId, item.prn, item.price, item.currencyCode, item.startDateActive, item.endDateActive)), dateConflictsValidator));
priceListDetails.priceListLines
는 JSON 객체의 배열이며, 나는 그들이 buildPriceListItem
를 사용 FormGroup
들로 매핑하고있다.
buildPriceListItem(listLinesId, prn, price, currencyCode, startDateActive, endDateActive): FormGroup {
return this.formBuilder.group({
listLinesId: listLinesId,
prn: [prn, Validators.required],
price: [price, Validators.required],
currencyCode: [currencyCode, Validators.required],
startDateActive: [startDateActive, Validators.required],
endDateActive: [endDateActive, Validators.required]
}, { validator: startAndEndDateValidator });
}
당신이 볼 수 있듯이
, 나는FormGroup
수준의 검증뿐만 아니라
FormArray
수준의 검증 있습니다.
JSON 전체 FormArray
각 생성 FormGroup
복잡한 검증을위한 FormArray
FormGroup
의의 및 실행 검증에 객체의 '매핑'(대형의 ) 배열을 포함이 큰 프로세스는 브라우저가 응답하지 있습니다.
데이터 집합이 작은 경우 문제가 해결됩니다.
이 문제를 해결하려면 도와주세요.
유효성 검사기를 사용 중지 해 보셨습니까? – c69
@ c69 유효성 검사기를 원합니다. 유효성 검사기를 제거하더라도 페이지가 응답하지 않는 시간은 줄어 듭니다. – karthikaruna
좋습니다 .. 유효성 검사기 없이도 페이지가 느리다면 총 요소 수는 얼마나됩니까? 내부 formGroup을 생성하는 데 사용하는 코드는 무엇입니까? 네가 보여준 사람은 무죄로 보인다. – c69