小程序跳转web-viewt指定页面不刷新,解决记录

  • Post author:
  • Post category:小程序




项目场景:


背景:项目是用微信小程序的框架,里面用的是web-view标签嵌套的react项目,主要的业务都是在react项目里写的。



最近遇到一个问题是,需要从H5页面跳转到微信小程序的支付页面,支付成功后,返回到对应的web-view页面。试了几种方式,要不是页面返回不刷新接口,要不是返回多上一层页面没有替换,返回没有达到想要的效果。




解决方案:

H5页面跳转设置: (需要项目先goback上一个页面,不然微信小程序的web-view的src改变后,返回页面还有上一个页面的历史)

    let p1=()=>{
      wxPushUrl({
        pathname: `/pages/pay6/index`,
      });
    }
    Promise.all([p1,historyBack()])

微信小程序设置:

原因:可以在所在小程序页面直接更改上一个页面的this.data的值,上一个页面也是指向web-View页的,直接更改需要跳转src值即可。注意:要添加一个时间戳,此时返回的页面的Src已经变了,如果再次跳转到微信小程序,返回页面的src是一样的话,是不会刷新了。

    let pages = getCurrentPages(); //获取当前页面js里面的pages里的所有信息。
    let beforePage = pages[pages.length - 2]; // 前一个页面
    beforePage.setData({
      src: `${
        href + `#/publicDetailNew/?id=55&type=1&time=${new Date().getTime()}`
      }`,
    });
    wx.navigateBack({
      delta: 1,
    });
  },



版权声明:本文为qq_60178319原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。