在我的 Angular 2 表单中,我有以下打字稿:
export class UserEditComponent implements OnChanges {
@Input() userModel: IUserModel;
@Output() onSave: EventEmitter<IUserModel> = new EventEmitter<IUserModel>();
@ViewChild("userEditForm") userEditForm: FormControl;
private userNameIsValid = true;
constructor(private httpService: HttpService) {
}
ngOnChanges (changes: SimpleChanges) {
this.userEditForm.resetForm();
console.log(this.userEditForm);
}
....
}
和模板html:
<form class="form-horizontal" #userEditForm="ngForm" (ngSubmit)="onSaveUser()" novalidate>
....
</form>
我尝试使用 .reset() 函数,但它什么也没做。.resetForm 实际上将表单的 _submitted 属性从 true 重置为 false,但是,它给了我一个 TypeScript 错误Property resetForm does not exist on type FormControl
。
首先,resetForm 是一个有效的实际功能吗?我似乎找不到任何文档......但它有效并且 .reset() 没有。
其次,我怎样才能摆脱这个 TypeScript 错误?我需要更新 Angular 2 的类型吗?