TOC
以下是某个单页应用的地址
http://m.cswh.me/dh/#/activity/flagRaisingPolice?act_token=b5f01112731d4c47bc5a7214d17365b2
而在这个页面使用微信的JSAPI进行分享之后,即使你设置了
wx.ready(function() {
wx.onMenuShareAppMessage({
link: window.location.href ,
title: that.config.share_title,
imgUrl: uploadURL + that.config.share_icon,
desc: that.config.share_text
})
wx.onMenuShareTimeline({
link: window.location.href,
title: that.config.share_title,
imgUrl: uploadURL + that.config.share_icon,
desc: that.config.share_text
})
})
link: window.location.href
分享出去的地址依旧会带上一个参数,并且这个参数还是放到了页面Hash的前面,导致你的单页进入之后路由匹配都会有问题
解决办法
window.location.href =
window.location.origin +
window.location.pathname +
'#/' +
window.location.href.split('#/')[1]
在main.js 里面进行一次地址重新拼接 直接删除掉这个干扰因素。
另外实在是觉得微信很傻逼,都什么年代了 对于spa的支持还是那么的辣鸡。