我正在开发一个具有多个不同页面的应用程序,我需要一些帮助。
我的应用程序从 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
的值时,它说未定义。
推送页面并添加参数,如下所示:
this.navCtrl.push(resource.page, {item: item});
请注意,您缺少第2 页上的第二个参数item
selectResource()
像这样检索第 3 页上的数据(例如在构造函数中(
this.city = this.navParams.get('item');
另请注意,您可能希望使用提供商。这允许您在整个应用程序中共享数据。
在这里,您将找到有关此的更多信息: https://www.gajotres.net/ionic-2-sharing-data-between-pagescomponents/2/