使用离子选择动态

时间:2018-08-03 18:42:05

标签: html sqlite cordova ionic-framework ionic3

我在项目中添加了一个离子选择,并且我试图在单击时进行过滤,仅显示该单击的信息。但是由于某种原因,它给了我错误,以及我在所有这方面都是新手,我不知道这可能是什么。如果有人可以帮助我,我会很高兴。我很抱歉翻译成英文。

HTML

range1.getValues().toString().toLowerCase()

DATABASE.TS

<ion-select (ionChange)="selecionaregiao()" [(ngModel)]="regiao">
    <ion-option value="opt1"></ion-option>
    <ion-option value="opt2">Zona Oeste</ion-option>
    <ion-option value="opt3">Zona Norte</ion-option>
    <ion-option value="opt4">Zona Sul</ion-option>

</ion-select>

和Function .ts

 getRegiao(pregiao: string){
return new Promise<Regiao[]>((resolve, reject) => { 

  let sql = "SELECT * FROM TB_REGIAO" + pregiao;
  console.log(sql);          
  this.executeQuery(sql).then(data => {
    let regioes = [];
    data.forEach(function (row) {
      let regiao: Regiao = { nom_regiao: row[0]}
      regioes.push(regiao);
    });
    resolve();

  }).catch(error => {
    console.log(error);
  });

});


}

1 个答案:

答案 0 :(得分:0)

在函数ts中,您正在使用参数定义函数。

selecionaregiao(pregiao: string) {
this.db.getRegiao(pregiao)
        .then(data => this.regioes = data)
        .catch(error => console.log('Something want wrong!'));
}

但是在html中,您没有传递任何参数。

因此更改离子选择可能会解决问题

<ion-select (ionChange)="selecionaregiao(regiao)" [(ngModel)]="regiao">
    <ion-option value="opt1"></ion-option>
    <ion-option value="opt2">Zona Oeste</ion-option>
    <ion-option value="opt3">Zona Norte</ion-option>
    <ion-option value="opt4">Zona Sul</ion-option>

</ion-select>