造成此问题的原因是由于Angular 15版本的变更对响应式表单产生了影响。解决此问题的方法如下:
1.尝试升级到更新的Angular版本(>= 15.1)进行修复。
2.如果无法升级,请尝试手动修复此问题。以下是可能需要进行的更改:
在应用程序的FormsModule上添加ReactiveFormsModule。
将NgModule中的引入更改为:
import { ReactiveFormsModule } from '@angular/forms'; ... imports: [ BrowserModule, ReactiveFormsModule, ... ],
3.确保为响应式表单控件添加了FormControl,并将其添加到HTML表单中。例如:
types.component.ts:
import { Component } from '@angular/core';
import { FormGroup, FormControl } from '@angular/forms';
@Component({
selector: 'app-types',
template: `
`
})
export class TypesComponent {
myForm: FormGroup;
constructor() {
this.myForm = new FormGroup({
firstName: new FormControl(),
lastName: new FormControl()
});
}
onSubmit() {
console.log(this.myForm.value);
}
}
在HTML中,将必须使用formControlName指令将FormControl绑定到HTML输入,例如:
希望这对您有所帮助!