美文网首页
小程序传对象到下一个页面

小程序传对象到下一个页面

作者: Zero_Jin | 来源:发表于2020-12-02 09:07 被阅读0次

    小程序传参数到下一个页面,跟 get 请求一样在路径后面拼接参数;如果传的数据是对象的话,需要先将对象转成 json 字符串传过去;这里就会有个问题,那就是如果对象里面的属性过多导致参数过长,传递的时候微信小程序会将参数裁剪;这样在目标页接收数据的时候就会解析失败导致报错:

    let payModel = {
          nonceStr: res.data.nonceStr,
          package: res.data.package,
          paySign: res.data.sign,
          timeStamp: res.data.timeStamp,
          signType: res.data.signType
        }
    // 将对象转为json字符串
    let jsonStr = JSON.stringify(payModel)
    

    如果数据较少这样传递是没有问题的,如果参数过多,就需要用 encodeURIComponent 再转下

    let jsonStr = encodeURIComponent(JSON.stringify(payModel))
    
    // 跳转下一页并传参
    wx.navigateTo({
       url: '/pages/subscribe_pay/subscribe_pay?payModel=' + jsonStr
    })
    

    目标页解析数据:

    // 数据解析
     let model = JSON.parse(decodeURIComponent(options.payModel))
    

    相关文章

      网友评论

          本文标题:小程序传对象到下一个页面

          本文链接:https://www.haomeiwen.com/subject/wukywktx.html