收到错误 'Property '...' 在类型 'AbstractControl' 上不存在
Getting error 'Property '...' does not exist on type 'AbstractControl'
我在 Angular 中有一些 material 按钮 10 我想禁用它,除非 FormArray 中的某个字段有值。我不断收到错误消息:Property 'querytext' does not exist on type 'AbstractControl'.
我尝试按照 Whosebug post 中提到的将 FormArray 置于 get 函数的形式,但错误不断发生。
这是html:
<button
mat-icon-button
[disabled]="!filterFormArray.controls[0].querytext.value"
(click)="saveFilter()"
matTooltip="Save Filter"
[matTooltipPosition]="'above'"
>
<mat-icon>save</mat-icon>
</button>
这里是 ts:
public saveFilterForm: FormGroup;
public get filterFormArray() {
return this.saveFilterForm.get('current_filters') as FormArray;
}
public ngOnInit(): void {
/* Initiate the form */
this.saveFilterForm = this.fb.group({
current_filters: this.fb.array([this.createFilter()]),
});
}
/* initialize form row */
private createFilter(): FormGroup {
return this.fb.group({
querytext: [null, Validators.compose([Validators.maxLength(30)])],
selectedcolumn: [null, null],
selectedcondition: [null, null],
});
}
在 html 中检查字段值的正确格式是什么?
你需要调用Form的.get()函数
而不是
!filterFormArray.controls[0].querytext.value
做
!filterFormArray.controls[0].get('querytext').value
我在 Angular 中有一些 material 按钮 10 我想禁用它,除非 FormArray 中的某个字段有值。我不断收到错误消息:Property 'querytext' does not exist on type 'AbstractControl'.
我尝试按照 Whosebug post 中提到的将 FormArray 置于 get 函数的形式,但错误不断发生。
这是html:
<button
mat-icon-button
[disabled]="!filterFormArray.controls[0].querytext.value"
(click)="saveFilter()"
matTooltip="Save Filter"
[matTooltipPosition]="'above'"
>
<mat-icon>save</mat-icon>
</button>
这里是 ts:
public saveFilterForm: FormGroup;
public get filterFormArray() {
return this.saveFilterForm.get('current_filters') as FormArray;
}
public ngOnInit(): void {
/* Initiate the form */
this.saveFilterForm = this.fb.group({
current_filters: this.fb.array([this.createFilter()]),
});
}
/* initialize form row */
private createFilter(): FormGroup {
return this.fb.group({
querytext: [null, Validators.compose([Validators.maxLength(30)])],
selectedcolumn: [null, null],
selectedcondition: [null, null],
});
}
在 html 中检查字段值的正确格式是什么?
你需要调用Form的.get()函数 而不是
!filterFormArray.controls[0].querytext.value
做
!filterFormArray.controls[0].get('querytext').value