vue中调用微信js-sdk自定义分享

当项目运行在微信浏览器时,会遇到分享的需求,下面是我实现微信分享时遇到的一些坑,需要注意:原有的 wx.onMenuShareTimeline、wx.onMenuShareAppMessage、wx.onMenuShareQQ、wx.onMenuShareQZone 接口,即将废弃。请尽快迁移使用客户端6.7.2及JSSDK 1.4.0以上版本支持的 wx.updateAppMessageShareData、updateTimelineShareData 接口。

一、配置
登录微信公众号配置js安全域名,分享权限等等。

二、安装:

npm i weixin-js-sdk --save

三、使用
1、从服务器获取signature签名:
这里注意由于项目是采用hash模式,地址需要处理一下location.href.split(’#’)[0]
vue中调用微信js-sdk自定义分享_第1张图片
2、wx.config配置:
如果需要调试,开启debug即可
vue中调用微信js-sdk自定义分享_第2张图片
3、wx.ready注册:
link必须是配置的安全域名,域保持一致
vue中调用微信js-sdk自定义分享_第3张图片
4、页面引入:
在首页调用一次即可
vue中调用微信js-sdk自定义分享_第4张图片

import { initWx } from ‘…/weixin’;

let obj = {
	title:this.homeList.share.shareTitle,
    link:this.homeList.share.shareLink,
    imgUrl:this.homeList.share.shareIcon,
    desc:this.homeList.share.shareDescription,
}
initWx(obj)

至此,基本的分享功能已经注册完毕,但是测试发现ios生效,android并不生效,最后反复调试,解决了这个坑,暂未发现是什么原因,可能是微信的坑。

解决方式:
jsApiList里加入’onMenuShareAppMessage’与’onMenuShareTimeline’即可。不配置wx.onMenuShareTimeline (); wx.onMenuShareAppMessage (); 也可以。
vue中调用微信js-sdk自定义分享_第5张图片
再次测试,发现android可以了,解决了这个坑。
vue中调用微信js-sdk自定义分享_第6张图片
四、链接:
微信JS-SDK说明文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115

你可能感兴趣的:(Vue)