Angular 形成重置值并设置其所有初始值而不是空值

Angular Form reset value and set all its initial value rather than null

例如我有下面的表格。

searchForm = new FormGroup({
    firstName: new FormControl(''),
    lastName: new FormControl('')
  })

问题是,当我使用 searchForm.reset() 时,初始值设置为 null 而不是我在 [=16] 中设置为初始值的空字符串 '' =].

我已经尝试执行下面的代码并且它有效。 问题是,例如我有 20 FormControl,我需要全部输入并在 .reset({firstName:'', other20properties..})

中初始化它

this.searchForm.reset(
      {
        firstName: '',
        lastName: ''
      }
    );

有没有办法重置表单并将其所有初始值设置为空字符串''

在这些类型的场景中,最好将表单初始化包装到一个单独的方法中,并在 form.reset 之后调用该方法,就像这样 -

formInit() {
 searchForm = new FormGroup({
    firstName: new FormControl(''),
    lastName: new FormControl('')
 })
}


anotherFunction() {
  this.searchForm.reset();
  this.formInit();
}