首页 > 解决方案 > 设置默认值以使用反应形式进行选择

问题描述

我有一些这样的功能:

cancel(): void {
  this.form.reset();
  this.router.navigate([], { queryParams: { activeOnly: false } });
}

在这样的html中:

<select class="form-control-sm" id="select-process-type" formControlName="processType">
    <option [selected]="!form.get('processType').value" disabled>
        {{'type' | translate}}
    </option>
    <option [value]="'1'" [innerHTML]="'1' | translate">
    </option>
    <option [value]="'2'" [innerHTML]="'2' | translate">
    </option>
    <option [value]="'3'" [innerHTML]="'3' | translate">
    </option>
</select>

我遇到的问题是当我打电话时

  this.form.reset();

它用表单清除所有值,甚至没有显示第一个,因为我使用的第一个选项就像占位符

这里应该是什么

在此处输入图像描述

这就是它的作用

反应式

标签: angularangular-reactive-forms

解决方案


[value]="null"在默认选项中设置。

试试这样:

<option [selected]="!form.get('processType').value" [value]="null" disabled>
    {{'type' | translate}}
</option>

推荐阅读