vue history模式 ios微信分享坑


vue history模式 ios微信分享坑

  问题分析:因为苹果分享会是调取签名失败是因为:苹果在微信中浏览器机制和安卓不同,有IOS缓存问题,和IOS对单页面的优化问题,通俗点说安卓进行页面跳转分享时会刷新当前的url,而苹果不会,苹果是通过历史记录进来的,不会刷新url所以会导致签名失败

解决方法

  

beforeRouteEnter(to, from, next) {
  // XXX: 修复iOS版微信HTML5 History兼容性问题
  if (to.path !== location.pathname) {
  // 此处不可使用location.replace
    location.assign(to.fullPath)
  } else {
    next()
  }
}

 

注意: 如果使用了location.assign()会加载新的文档。这样如果首页使用了keep-alive就会失效!


免责声明!

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



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