0

我正在开发具有多个不同页面的应用程序,我需要一些帮助。

我的应用程序从 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在控制台日志中显示的值时,它显示未定义。

4

1 回答 1

1

推送页面并添加参数,如下所示:

this.navCtrl.push(resource.page, {item: item});

请注意,您缺少第 2 页上的第二个参数 itemselectResource()

像这样检索第 3 页上的数据(例如在构造函数中)

this.city = this.navParams.get('item');

另请注意,您可能需要使用提供商。这允许您在整个应用程序中共享数据。

在这里您可以找到更多相关信息: https ://www.gajotres.net/ionic-2-sharing-data-between-pagescomponents/2/

于 2018-10-04T09:28:11.110 回答