我在一个使用表单的语言项目中工作,但其中一个表单控制字段有问题,表单控制字段的名称以前是base,但我注意到,尽管给了它一个值,但在提交表单后,表单控制值是未定义的。在检查了项目但没有得到结果后,我决定更改表单控件名称(希望得到结果(,所以我将表单控件名称表单库更改为bace,但我遇到了更奇怪的事情。。。控件中的表单控件名称为bace,但值为基本(并且仍然未绑定(
initialForm() {
this.calculateForm = this.fb.group({
employeeId: [''],
childrenCount: ['', Validators.required],
jobPercent: ['', Validators.required],
additionHour: ['', Validators.required],
contracts: this.fb.array([
this.fb.group({
bace: ['', Validators.required],
actionDate: ['', Validators.required],
expirationDate: ['']
})
]),
}
)
}
控件中的bace(也在ts和html文件中(;基本";形式值
<mat-form-field appearance="outline">
<mat-label>salary</mat-label>
<input matInput formControlName="bace" required>
</mat-form-field>
有人知道问题出在哪里吗?
这看起来很奇怪。你能创建一个Stacklitz来测试它吗?
我可以建议的另一件事是确保您没有ASCII问题,因此文本看起来像";c";在bace中,但这个字符没有被识别(尽管我不认为是这样(。
您可以尝试的另一个测试是在模板(或组件类(中打印这两种情况的值:
this.calculateForm.get('contracts').controls['bace']
和
this.calculateForm.get('contracts').controls['base']
并查看";bace";这个案例可以给你更多的提示