找不到名称为“ Salutation”的控件

时间:2019-11-01 12:44:18

标签: angular angular-material angular-reactive-forms

使用反应形式获取垫选择值,但给出错误找不到名称为“ Salutation”的控件: 这是我的代码

  <form [formGroup]="customerService.formModel" autocomplete="off" class="container" (ngSubmit)="onSubmit()">
  <p class="header-p">CONTACT INFORMATION</p>
  <div class="form-group" fxLayout="row" fxLayout.xs="column" fxLayout.md="column" fxLayout.sm="column">
    <mat-form-field fxFlex="20%" appearance="outline">
      <mat-label class="label-text">Salutation</mat-label>
      <mat-select class="form-control" formControlName="Salutation" placeholder="Salutation">
        <mat-option *ngFor="let salutation of salutations" value="salutation">{{salutation}}</mat-option>
      </mat-select>
      <mat-icon class="icon-color" matSuffix>person</mat-icon>
    </mat-form-field></div></form>

组件文件

   export class RegistrationComponent implements OnInit {
      constructor(public customerService :CustomerService ) { }
      ngOnInit(){}
      salutations:string[] =['Mr','Ms'];
}

服务文件

  export class CustomerService {
constructor(private fb: FormBuilder){ }
formModel:FormGroup =new FormGroup({});
ngOnInit(): void {

  this.formModel = this.fb.group({
    Salutation:['',Validators.required]})

出什么问题了?我似乎听不懂

1 个答案:

答案 0 :(得分:1)

我认为问题在于formGroup没有Salutation,因为您正在服务中使用ngOnInit挂钩,而根据我的研究,它不会在服务上被调用。 尝试记录formGroup并在构造函数中构建表单

else

本来应该是评论,但凭我的声誉我无法。