Taro小程序 webview src已修改但页面不刷新

41 篇文章 1 订阅
8 篇文章 0 订阅

解决办法:加时间戳

我的h5页面路由是hash模式也就是带#号的

  componentWillMount() {
    const { params } = this.$router;
    let url = params.url || "";
    this.updataUrl(url);
  }
  // 加时间戳 防止缓存
  updataUrl(url) {
    console.log("我是webview获得的url");
    console.log(url);
    console.log("我是webview解码后获得的url");
    console.log(decodeURIComponent(url));
    // 加时间戳 防止缓存
    if (url.includes("/#")) {
      url =  url.split('#')[0].split('?')[0] + '?v=' + new Date().getTime() + '/#' + url.split('#')[1]
    }
    // 赋值
    console.log("不是默认就自动赋值");
    this.setState({
      url: decodeURIComponent(url)
    });
  }

重点就是这 时间戳一定要加在/#/里 不能加在后边参数里

http://192.168.1.22:8080/#/index?v=1111//错误写法

http://192.168.1.22:8080/?v=1655706751389/#/index?//正确写法

url = url.split('#')[0].split('?')[0] + '?v=' + new Date().getTime() + '/#' + url.split('#')[1]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值