当前位置: 代码迷 >> 综合 >> 微信小程序wx.navigateBack() 携带参数返回
  详细解决方案

微信小程序wx.navigateBack() 携带参数返回

热度:2   发布时间:2024-02-11 22:01:55.0

在做购物商城时候,在支付界面点击选择地址,跳转地址界面,选中地址返回支付界面的时候,需要将地址信息返回,这时候使用的是navigateBack()进行返回,不能通过url直接传递参数,可选方法如下


  • 通过本地缓存storage保存数据,在地址界面使用wx.setSorageSync()保存选中的地址,在支付界面的onShow方法中使用wx.getStorageSync()获取缓存中的地址即可
    这是一种可行的方法,不过本文章介绍另外一种实用的方法

  • 1 使用let pages = getCurrentPages()获取页面栈
    2 通过let prePage = pages[pages.length-2]获取上一界面的所有js信息,这时候prePage相当于上一界面的this
    3 调用prePage.setData({})可以设置上一界面的data数据
    4 具体代码如下
// getCurrentPages是获取页面栈
let pages = getCurrentPages()// 获取上一界面的页面内容let perPage = pages[pages.length-2]// 相当于在上一步进行this.setData({})perPage.setData({xxx: xxx})wx.navigateBack({delta: 1})