0

从 Angular 8 迁移到 Angular 9 后,出现此错误

app/src/app/users/add/add.component.html:14:48 中的错误 - 错误 NG2345:“AbstractControl”类型的参数不可分配给“FormControl”类型的参数。“AbstractControl”类型缺少“FormControl”类型的以下属性:registerOnChange、registerOnDisabledChange、_applyFormState

<ng-container *ngFor="let error of errors(addNewUserForm.get('username'))">

这是我的功能

errors(ctrl: FormControl): string[] {
   return ctrl.errors ? Object.keys(ctrl.errors) : [];
}

在 Angular 8 中,一切正常。谢谢

4

2 回答 2

0

我必须同样的问题,改变FormControlAbstractControl解决我的问题。本文详细解释了 Angular Forms、FormControl 和 AbstractControl

errors(ctrl: AbstractControl): string[] {
   return ctrl.errors ? Object.keys(ctrl.errors) : [];
}
于 2021-03-30T07:54:27.317 回答
0

我使用 $any() 来解决这个问题。奇怪的是它一直在抱怨它,因为export declare class FormControl extends AbstractControl

于 2020-10-15T22:47:27.570 回答