Angular 反应形式将 form.values 转换为模型

sre*_*moh 6 forms reactive angular

我有一个由接口表示的模型。

export interface MyModel {
  id: number;
  enabled: boolean;
  name: string;
  city: string;
  country: string;
}
Run Code Online (Sandbox Code Playgroud)

当我发布反应形式时,所有值form.value都是字符串类型。我试图通过使用<MyModel>语法进行转换,但没有奏效。

submitForm(form: FormGroup, event: Event) {
   this.func(<MyModel>form.value);
}
Run Code Online (Sandbox Code Playgroud)

任何想法你将如何处理?

我的表单设置是这样的:

setupForm() {
    this.userForm = this.formBuilder.group({
      id: [null, Validators.required],
      enabled: [null, Validators.required],
      name: [null, Validators.required],
      city: [null, Validators.required],
      country: [null, Validators.required]
    });
  }
Run Code Online (Sandbox Code Playgroud)

Deb*_*ahK 7

这样的事情应该工作:

Object.assign(this.movie, this.editForm.value);
Run Code Online (Sandbox Code Playgroud)

它将所有匹配的属性从编辑表单值复制到原始对象中。