Ionic 2/3根据ID推送数组中的项目

时间:2017-11-21 04:18:29

标签: ionic-framework ionic2 ionic3

我希望根据类别ID将项目从一个页面推送到另一个页面。然后我将数组中的所有内容(具有匹配的类别ID)推送到下一页。

我使用if语句将参数传递给第二页,或者在第二页中调用数组并使用NgIf。以下是我更好的视觉效果的代码。我对Ionic很新。谢谢你的帮助!

第一页

if(id = 1) {
    category_id: this.referenceList.category_id = 1;

    this.navCtrl.push(ReferencePage,{category_id:"category_id"});
  }
  else {
    console.log("nope")
  }

第二页

<div *ngfor = let reference of referenceList></div>
<div *ngif = category.id === 1> {{reference.referenceField1}} {{reference.referenceField2}} {{reference.media}} </div>

不确定使用哪一个以及为什么。再次感谢!很高兴澄清是否存在任何混淆。

1 个答案:

答案 0 :(得分:0)

您将category_id存储在变量中,因此请使用:

this.navCtrl.push(ReferencePage,{category_id:category_id});

在第二页控制器中,您需要:

import ( NavParams ) from 'ionic-angular';

category_id: number;

constructor(public navParams: NavParams) {
    ...
}

ionViewDidLoad() {
    this.category_id = this.navParams.get('category_id');
}

此外,您的html应该是(如果我了解您在做什么):

<div *ngFor = let reference of referenceList>
    <div *ngIf = category_id === 1> 
        {{reference.referenceField1}};
        {{reference.referenceField2}};
        {{reference.media}}; 
    </div>
</div>