一.背景
VUE-cli 2,路由模式是HISTORY.
例如系统的网址X是www.123456.com,公众号配置的域名也是这个.
二.步骤
1.进入A页面后判断,然后window.open()到微信授权地址
2.微信授权后又重新跳转X网址,又重新进入A页面.
3.然后进行JSSDK的config,然后调用分享接口
三.自己的代码情况:
1.config的URL已经做了安卓和IOS的区分
if (publicFun.isIOS()) { //是IOS url = this .PUBLICCONFIG.entryUrl; //全局设置的入口地址,注意,A页面会有一次window.open 跳转,所以他的值总是第二次跳转的URL,这个URL是带着用户的code的.config相关配置都是通过这个url来获取的
url = location.href.split( '#' )[0]; } |
2.分享图片已经压缩至18kb,
3.前端的url也通过encodeURIComponent()方法进行转码
四.错误表现
1.由菜单进入页面时基本都能分享设置成功,偶尔出现子页面设置不成功的情况
2.在第1次分享成功的情况下,打开这个分享的了链接,2次分享经常失败
3.每个页面会有两个url,第二个URL都是一样的,都是微信授权后带code 的url,
第一个url由你进入的方式决定:
3.1菜单进入时,就是你配置的网址X是www.123456.com
3.2别人分享的链接进入时,他会在你的网址X后面加一些参数,form=xxxxx 之类的.
>我尝试过用这第一个URL进行config,但是根本不能用.
五.各种尝试
1..尝试过用A页面为跳转时的第一个连接,也就是网址X:www.123456.com,直接主页都不能分享了..
2.尝试过IOS 每进行一个路由跳转都进行一次 config和分享配置,依旧无用
wx.config() wx.ready(res => { // 如果需要定制ready回调方法 console.log(res) wx.updateTimelineShareData() // 分享到朋友圈 wx.updateAppMessageShareData() // 分享给朋友 }) updateTimelineShareData()和updateAppMessageShareData()一定要放在wx.ready()里,不然可能会出问题,这样二次分享就可以了
🚌很懂