H5 history.pushState 在微信内修改url后点击用safari打开/复制链接是修改之前的页面


解决方案:url参数增加随机参数

function wxRefresh() { var replaceQueryParam = (param, newval, search) => { var regex = new RegExp('([?;&])' + param + '[^&;]*[;&]?'); var query = search.replace(regex, '$1').replace(/&$/, ''); return (query.length > 2 ? query + '&' : '?') + (newval ? param + '=' + newval : ''); }; window.location.replace(location.protocol + '//' + location.host + location.pathname + replaceQueryParam('_wxr_', new Date().getTime(), location.search) + location.hash); }; // 执行 wxRefresh();




优化加入refresh,避免重复刷新
share(route) {
    var replaceQueryParam = (param, newval, search) => {
      var regex = new RegExp('([?;&])' + param + '[^&;]*[;&]?')
      var query = search.replace(regex, '$1').replace(/&$/, '')
      return (
        (query.length > 2 ? query + '&' : '?') +
        (newval ? param + '=' + newval : '')
      )
    }

    if (!route.query.refresh) {
      var chat = '&'
      if (!Object.keys(route.query).length) {
        chat = '?'
      }
      window.location.replace(
        location.protocol +
        '//' +
        location.host +
        location.pathname +
        replaceQueryParam('_wxr_', new Date().getTime(), location.search) +
        location.hash +
        chat + 'refresh=true'
      )
    }
  }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM