查阅了很多的博客都是采用下面的写法来处理,如果是一个单页面的话就可以起作用,但是如果H5是采用vue 并引入路由模块的话就会发现下面的代码只在初始的首页有作用,子路由页面都统统失效。
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
WeixinJSBridge.call('hideOptionMenu');
});
所以想让所有页面都禁止分享就在路由守卫afterEach中加入以下代码就实现了效果
router.afterEach(() => {
// 微信环境下禁用分享
const ua = navigator.userAgent.toLowerCase();
// eslint-disable-next-line eqeqeq
if (ua.match(/MicroMessenger/i) == 'micromessenger') {
// eslint-disable-next-line no-undef
WeixinJSBridge.call('hideOptionMenu');
}
});