最近开发vue的时候发现 不使用history模式的时候,二次分享地址会出现非常大的改变
原来的地址 http://www.test.com/html/#/
二次分享打开的地址 http://www.test.com/html/?from=singlemessage&isappinstalled=0#/
如果有自定义分享地址 http://www.test.com/html/?from=singlemessage&isappinstalled=0#/?user_id=1
微信分享的时候默认都会在url后面添加from和isappinstalled,这样如果有支付页就会出现地址错误的问题
解决方法
function getQueryString(name) { var reg = new RegExp(‘(^|&)‘ + name + ‘=([^&]*)(&|$)‘, ‘i‘); var r = window.location.search.substr(1).match(reg); if (r != null) { return unescape(r[2]); } return null; } // 分享地址进来更新地址 if(getQueryString(‘isappinstalled‘) === ‘0‘){ window.location.replace(window.location.href.replace(window.location.search,‘‘)); return false; }
可以在app.vue的beforeCreate里面添加一段这个来做地址跳转替换。
当你再次复制地址的时候就会发现地址就正确了。
原文:https://www.cnblogs.com/loren1995/p/11045069.html