h5 禁止微信分享
1、创建 mixin.js文件
src\mixin\mixin.js
点击查看代码
// 隐藏微信分享
function onBridgeReady() {
// eslint-disable-next-line
WeixinJSBridge.call("hideOptionMenu");
}
const mixin = {
data: function() {
return {
};
},
computed: {
},
methods: {
},
beforeCreate() {
// eslint-disable-next-line
if (typeof WeixinJSBridge === "undefined") {
if (document.addEventListener) {
document.addEventListener("WeixinJSBridgeReady", onBridgeReady, false);
} else if (document.attachEvent) {
document.attachEvent("WeixinJSBridgeReady", onBridgeReady);
document.attachEvent("onWeixinJSBridgeReady", onBridgeReady);
}
} else {
onBridgeReady();
}
},
};
export default mixin;
import wx from "weixin-js-sdk";
import mixin from "@/mixin/mixin";
3、页面获取微信验签-调用后端接口
点击查看代码
verify(){
let that = this
setTimeout(() => {
// 需要根据需求配置
that.$axios.get(Url+'api/v1/wechat/signature?url=http://trainint.gwlife.cn/train/mobile/index.html',
{
headers:{
token:this.token
}
}).then(res => {
if (res.data.code == '0') {
console.log("微信res",res,wx)
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: res.data.data.appId, // 必填,公众号的唯一标识
timestamp: res.data.data.timestamp, // 必填,生成签名的时间戳
nonceStr: res.data.data.nonceStr, // 必填,生成签名的随机串
signature: res.data.data.signature, // 必填,签名,见附录1
jsApiList: [
"hideAllNonBaseMenuItem",
"showMenuItems",
// "onMenuShareAppMessage",
// "onMenuShareTimeline",
// "checkJsApi",
// "wx-open-launch-weapp",
'hideMenuItems'
], // 必填,需要使用的JS接口列表
// openTagList: ["wx-open-launch-weapp"], //用于跳转到小程序
});
wx.ready(function(row){
console.log('执行成功',row)
});
wx.error(function(err){
console.log('错误',err)
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名
});
}
})
.catch(error =>
//请求失败,触发catch中的函数 可省略
console.log(error)
)
},1000)
},
mounted () {
this.$nextTick(() => {
this.verify()
})
}