【问题标题】:Ion-select issue with server data服务器数据的离子选择问题
【发布时间】:2018-06-23 05:42:13
【问题描述】:

我想显示来自服务器的选项。当我点击选择选项时,我在第一次点击时获得了以前的值,在第二次点击时我获得了更新的值。

我正在制作一个应用程序,其中用户有一个页面,他们可以在其中更改选项并将该数据保存到服务器。 But when options are updating it's coming to the option on the second click, the previous value is showing on the first click.

代码如下:

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>     

【问题讨论】:

    标签: javascript angular typescript ionic2 ionic3


    【解决方案1】:

    在离子选择上使用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> 
    

    【讨论】:

    • 使用 ionchange 后,服务没有被触发,因此,选项中没有值发生变化
    猜你喜欢
    • 1970-01-01
    • 2019-03-01
    • 2015-10-22
    • 2016-09-26
    • 2016-09-21
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多