我正在处理具有多个不同页面的应用程序,我需要一些帮助。
我的应用程序从Parse中的数据库中检索数据,并且我正在使用提供程序以便将这些数据共享到我的其他页面。
我的主页(第1页)要求用户选择城市。根据用户的选择,下一页(第2页)将显示该城市的特定数据,并具有指向第3页的资源的链接。
我的问题是,第3页列出了所有城市的数据,而不是第1页中选择的城市。
是否可以将数据从第1页传递到第2页和第3页?
到目前为止,我已经尝试过:
第1页:
selectCity(item) {
this.navCtrl.push( {item : item} };
}
第2页:
city: any;
this.city = this.navParams.get(‘item’);
// there is an array ‘resource’ which contains names of different pages. this method pushes the selected page.
selectResource() {
this.navCtrl.push(resource.page)
}
第3页:
city: any;
this.city = this.navParams.get(‘item’);
当我尝试在控制台日志中显示this.city
的值时,它显示为undefined。
答案 0 :(得分:1)
按下页面并添加参数,如下所示:
this.navCtrl.push(resource.page, {item: item});
请注意,您在item
selectResource()
像这样在第3页上检索数据(例如在构造函数中)
this.city = this.navParams.get('item');
还请注意,您可能想使用提供程序。这使您可以在整个应用程序中共享数据。
在这里您将找到有关以下内容的更多信息: https://www.gajotres.net/ionic-2-sharing-data-between-pagescomponents/2/