选择选项默认为具有条件的值

时间:2017-04-11 21:49:02

标签: angular

我有一个选择框。我正在显示使用ngFor可用的方法。但是如果我只有一种方法,那么我需要将方法选择框默认为该值。不知道该怎么做。

              <select id='methods' class="icon" (change)="methodChange($event.target.value)" formControlName="method">
                <option value=""></option>
                <option *ngFor="let method of methods" [value]="method.name">{{method.name}} </option>
                <optgroup label="----"></optgroup>
                <option value="addmethod">method</option>
                <option value="editmethod">edit method</option>
              </select>

1 个答案:

答案 0 :(得分:1)

我会使用[(ngModel)]将select值绑定到组件属性,并使用ngOnInit函数在组件加载时设置该属性。

以下是您的观点:

<select id='methods' class="icon" (change)="methodChange($event.target.value)" formControlName="method" [(ngModel)]="defaultval">
    <option value=""></option>
    <option *ngFor="let method of methods" [value]="method.name">{{method.name}} </option>
    <optgroup label="----"></optgroup>
    <option value="addmethod">method</option>
    <option value="editmethod">edit method</option>
</select>

然后在你的控制器中:

defaultval = null;

ngOnInit() {
    if (this.methods.length == 1) {
        this.defaultval = this.methods[0].name;
    }
}