点击链接,进入页面,右上角分享给好友
- 发布:2020-12-17 10:04
- 更新:2020-12-17 10:04
- 阅读:1362
产品分类: uniapp/H5
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10 1803
HBuilderX类型: 正式
HBuilderX版本号: 2.9.8
浏览器平台: 微信内置浏览器
浏览器版本: 7.0.18
项目创建方式: HBuilderX
App下载地址或H5⽹址: https://official.koalaknow.com
操作步骤:
预期结果:
预期:实现自定义标题,副标题,图片
预期:实现自定义标题,副标题,图片
实际结果:
实际结果:部分手机,比如iphone7plus,自定义无效
实际结果:部分手机,比如iphone7plus,自定义无效
bug描述:
同样的代码,部分手机自定义分享标题图片都正确,部分手机自定义标题和图片无效。
下面是封装好的微信分享。
//微信h5分享
const wxshare = function(uid, shareurl, title, desc, img) {
console.log(shareurl, 's')
// jweixin.ready(function() {
var test = window.location.href;
// alert(test,'a')
// console.log(test)
uni.request({
url: '这里是url',
method: "POST",
data: {
'uid': uid,
'currurl': test,
},
success: function(msg) {
// console.log('http ok')
msg=msg.data;
var arr = new Array();
arr = msg.split(',');
var appId = arr[0],timestamp = arr[1],nonceStr = arr[2],signature = arr[3];
jweixin.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: appId, // 必填,公众号的唯一标识
timestamp: timestamp, // 必填,生成签名的时间戳
nonceStr: nonceStr, // 必填,生成签名的随机串
signature: signature, // 必填,签名,见附录1
jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage','hideAllNonBaseMenuItem', 'showMenuItems', 'closeWindow',] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
jweixin.ready(function() {
// alert('ready');
console.log('ready')
jweixin.showMenuItems({
menuList: ['menuItem:share:appMessage', 'menuItem:share:timeline'] // 要显示的菜单项,所有menu项见附录3
});
//分享到朋友圈
jweixin.onMenuShareTimeline({
title: title, // 分享标题
link: shareurl, // 分享链接
imgUrl: img, // 分享图标
success: function() {
// 用户确认分享后执行的回调函数
},
cancel: function() {
// 用户取消分享后执行的回调函数
}
});
//分享给朋友
jweixin.onMenuShareAppMessage({
title: title, // 分享标题
desc: desc, // 分享描述
link: shareurl, // 分享链接
imgUrl: img, // 分享图标
type: '', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: function() {
console.log('分享给朋友')
// 用户确认分享后执行的回调函数
},
cancel: function() {
console.log('share fail')
// 用户取消分享后执行的回调函数
}
});
jweixin.error(function(res) {
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
});
});
}
})
// });
}
0 个回复