简单,不依赖第三方库,支持jsonp跨域。
引入
//页面引入
< script src = "dist/wechat.share.js" > </ script >
//npm引入
npm i @mayupai / wechat - share - S
初始化对象
const params = {
config : {
apiURL : '服务器端返回配置参数的地址'
} ,
data : {
title : '分享标题' ,
desc : '分享文案' ,
imgUrl : '分享图片地址'
}
}
const ws = new WechatShare ( params )
//如需单独设置发送给朋友数据
ws . shareToFriend ( {
title : '朋友分享标题' ,
desc : '朋友分享文案' ,
imgUrl : '朋友分享图片地址'
} )
//如需单独设置朋友圈数据
ws . shareToTimeline ( {
title : '朋友圈分享标题' ,
desc : '朋友圈分享文案' ,
imgUrl : '朋友圈分享图片地址'
} )
服务器端apiURL返回数据说明,以PHP脚本为例
require_once "jssdk.php " ;
$ callback = $ _REQUEST ['callback ' ];
$ url = $ _REQUEST ['url ' ];
$ jssdk = new JSSDK (APP_ID , APP_SECRET );
$ signPackage = $ jssdk ->GetSignPackage ($ url );
print $ callback .'({"appId":" ' .$ signPackage ["appId " ].'", "timestamp":" ' .$ signPackage ["timestamp " ].'","nonceStr":" ' .$ signPackage ["nonceStr " ].'","signature":" ' .$ signPackage ["signature " ].'"}) ' ;
config对象参数
描述
apiURL
服务器端返回配置参数的地址
wxURL
(可选)JSAPI地址, 会自动在当前页面引入
debug
(可选)是否开启调试
jsApiList
(可选)jsApi列表,需要用到的sdk在这里引入
data对象参数
描述
link
(可选)分享地址,默认为当前页
title
(可选)分享标题
desc
(可选)分享标题
imgUrl
(可选)分享图片地址
success
(可选)成功回调
cancel
(可选)取消回调
const params = {
config ?: {
apiURL : '' , // 服务器端返回配置参数的地址
wxURL ?: '//res.wx.qq.com/open/js/jweixin-1.6.0.js' , //JSAPI地址, 自动在当前页面引入
debug ?: false , //是否开启调试
jsApiList ?: [
'updateAppMessageShareData' ,
'updateTimelineShareData' ,
'onMenuShareWeibo'
]
} ,
data ?: {
link ?: location . href , //分享链接,默认为当前页面
title ?: '' , //分享标题
desc ?: '' , //分享文案
imgUrl ?: '' , //分享图片地址
success ?: null , //成功回调
cancel ?: null , //取消回调
}
}
ws . shareToFriend ( data ) //单独设置分享朋友数据
ws . shareToTimeline ( data ) //单独设置分享朋友圈数据
ws . shareToWeibo ( data ) //单独设置分享微博数据