Angular2 反应形式 select 多个属性?

Angular2 reactive forms select multiple attribute?

我在我的应用程序中使用以下代码来响应形式。

如果我取消注释 [multiple] 行,Choose ... 选项不会将 dformControl 表单控制对象设置回状态 INVALID.

dformControl.multiple 顺便 returns false。即使我将注释行更改为 [multiple]="false",仍然切换回 Choose ... 选项不会将表单控件状态设置为 INVALID.

<select class="form-control"
        [id]="dformControl.key"
        [formControlName]="dformControl.key"
        /*[multiple]="dformControl.multiple"*/>

  <option *ngIf="!dformControl.value"
          value="">
    Choose ...
  </option>

  <option *ngFor="let opt of dformControl.options"
          [value]="opt.value"
          [selected]="dformControl.value == opt.value">
    {{opt.label}}
  </option>

</select>

在 select 级别绑定到 multiple 属性 到一个布尔值 isMultiple。然后你可以改变它, select 也会改变。看看这个,我用一个按钮改变它。 plnkr

  <select formControlName="cars" [multiple]="isMultiple">
      <option></option>
      <option *ngFor="let car of cars" >{{car}}</option>
  </select>

似乎在添加多个 属性 时它影响了所需的验证器。我能够添加一个额外的验证器并且它按预期工作。

Validators.compose([Validators.required,Validators.pattern('.+')]