我想显示来自服务器的选项。当我点击选择选项时,我在第一次点击时获得了前一个值,并且我在第二次点击时获得了更新的值。
我正在创建一个应用程序,其中用户有一个页面,可以更改选项并将该数据保存到服务器。但是当选项更新时,它会在第二次点击时进入该选项,则第一次点击时会显示上一个值。
以下是代码:
dropDownListOne() {
this.regService.dropDownOne(this.uId)
.subscribe((info) => {
this.ddOneData = info;
var array = this.ddOneData;
var val: string = (array[array.length - 1].dropdown1);
this.options = [];
this.data = val;
Object.keys(val).forEach(option => { if (val[option]!= "")
this.options.push(val[option])});
})
console.log(this.options)
}
HTML:
<ion-item>
<ion-select [(ngModel)]="option" placeholder="Select Option" (click)="dropDownListOne()">
<ion-option *ngFor="let option of options" [value]="option">{{option}}</ion-option>
</ion-select>
</ion-item>
答案 0 :(得分:0)
在离子选择而不是ionChange
上使用click
。
只要所选选项发生变化,这将触发dropDownListOne()
:
<ion-select [(ngModel)]="option" placeholder="Select Option" (ionChange)="dropDownListOne()">
<ion-option *ngFor="let option of options" [value]="option">{{option}}</ion-option>
</ion-select>