uni中H5转发
和扫码类似,注意下获取url是
url = window.location.href.split('#')[0]
调取的API,新旧接口简单使用上没什么区别
jsApiList: ['updateAppMessageShareData',//新接口'updateTimelineShareData',//新接口 'onMenuShareAppMessage',//即将废弃的接口 'onMenuShareTimeline'//即将废弃的接口 ]
比较坑的是微信规则调整,直接点开发送的转发只能转发文字,要从收藏或者公众号的链接转发才可以,完整代码
const jweixin = require('./jweixin/index.js')
function share(data) {
const url = window.location.href.split('#')[0]
uni.request({
url: '服务器链接',
method: 'GET',
data: {
url: url
},
success: function(result) {
jweixin.config({
debug: false,
appId: result.data.data.appId,
timestamp: result.data.data.timestamp,
nonceStr: result.data.data.nonceStr,
signature: result.data.data.signature,
jsApiList: [
'checkJsApi',
'updateAppMessageShareData',
'updateTimelineShareData',
'onMenuShareAppMessage',
'onMenuShareTimeline'
]
});
shareReady(data)
}
})
}
function shareReady(data) {
jweixin.ready(function() {
var shareData = {
title: data.title || '',
desc: data.desc || '',
imgUrl: data.imgUrl || '',
link: data.link || '',
success: function(res) {
// 分享后的一些操作
},
cancel: function(res) {}
};
//分享给朋友接口
jweixin.updateAppMessageShareData(shareData);
//分享到朋友圈接口
jweixin.updateTimelineShareData(shareData);
});
}
export {
share
}