全局设置隐藏:
//注意要写在App.vue文件的onLauch方法里面
onLaunch() {
let that = this
//监听页面跳转变化
uni.addInterceptor('navigateTo', {
//监听跳转
success(e) {
that.hideShareFun()
}
});
uni.addInterceptor('redirectTo', {
//监听关闭本页面跳转
success(e) {
that.hideShareFun()
}
});
uni.addInterceptor('switchTab', {
//监听tabBar跳转
success(e) {
that.hideShareFun()
}
});
uni.addInterceptor('navigateBack', {
//监听返回
success(e) {
that.hideShareFun()
}
});
},
/**
* 隐藏分享
*/
hideShareFun() {
if (typeof WeixinJSBridge == 'undefined') {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', this.onBridgeReady, false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady);
document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady);
}
} else {
this.onBridgeReady();
}
},
onBridgeReady() {
WeixinJSBridge.call('hideOptionMenu');
WeixinJSBridge.call('hideToolbar');
}
使用微信开放文档JS-SDK内的方法隐藏分享:
隐藏了分享栏的其他分享途径只开启了分享到微信好友
//分享
,onShare(){
console.log('进入分享')
// 分享----------
let dataUrl = COMMON_ROUTER_URL + `activity/activity_detail?id=${this.id}` //要分享的页面链接
let that = this
getWxConfig(dataUrl).then(res=>{
uni.hideLoading();
jweixin.config({
debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId:res.data.appId, // 必填,公众号的唯一标识
timestamp: res.data.timestamp, // 必填,生成签名的时间戳
nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
signature: res.data.signature, // 必填,签名,见附录1
jsApiList: [ 'hideAllNonBaseMenuItem', 'showMenuItems', 'onMenuShareAppMessage','updateAppMessageShareData']
});
jweixin.ready(function () { //需在用户可能点击分享按钮前就先调用
jweixin.hideAllNonBaseMenuItem();//隐藏所有非基础按钮
//显示功能按钮
jweixin.showMenuItems({
menuList: [
'menuItem:share:appMessage'
]
});
//分享给朋友
jweixin.updateAppMessageShareData({
title: '活动', // 分享标题
desc: that.detail.activityName, // 分享描述
link: COMMON_ROUTER_URL + `activity/activity_detail?id=${that.id}`, // 当前页面链接
imgUrl: ZY_OSS_URL + that.detail.picUrl, // 分享图标
success: function() {
//分享成功回调
console.log('分享成功回调');
},
cancel: function() {
//取消分享回调
console.log('取消分享回调');
}
});
})
})
}