React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能


Posted in Javascript onMay 26, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

/**
 * Created by wuyakun on 2017/5/23.
 */let wxUtils = {};
/**
 * 是否开启右上角Menu
 * @param open
 */
wxUtils.optionMenu = function (open = true) {
 if (open) {
  openOptionMenu();
 } else {
  disabledOptionMenu();
 }
};
/**
 * 是否禁用右上角
 */
function disabledOptionMenu() {
 if (typeof WeixinJSBridge === "undefined") {
  if (document.addEventListener) {
   document.addEventListener('WeixinJSBridgeReady', onBridgeReady(true), false);
  } else if (document.attachEvent) {
   document.attachEvent('WeixinJSBridgeReady', onBridgeReady(true));
   document.attachEvent('onWeixinJSBridgeReady', onBridgeReady(true));
  }
 } else {
  onBridgeReady(true);
 }
}
/**
 * 开启menu
 */
function openOptionMenu() {
 if (typeof WeixinJSBridge === "undefined") {
  if (document.addEventListener) {
   document.addEventListener('WeixinJSBridgeReady', onBridgeReady(false), false);
  } else if (document.attachEvent) {
   document.attachEvent('WeixinJSBridgeReady', onBridgeReady(false));
   document.attachEvent('onWeixinJSBridgeReady', onBridgeReady(false));
  }
 } else {
  onBridgeReady(false);
 }
}
function onBridgeReady(disable = true) {
 if (typeof WeixinJSBridge !== "undefined") WeixinJSBridge.call(disable ? 'hideOptionMenu' : 'showOptionMenu');
}
/**
 * 隐藏微信网页底部的导航栏
 * @param disable
 */
wxUtils.disabledToolbar = function (disable = true) {
 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
  // 通过下面这个API隐藏底部导航栏
  WeixinJSBridge.call(disable ? 'hideToolbar' : 'showToolbar');
 });
};
/**
 * 获取网络类型
 */
wxUtils.getNetworkType = function () {
 //network_type:wifi wifi网络 2 network_type:edge 非wifi,包含3G/2G 3 network_type:fail 网络断开连接 4 network_type:wwan 2g或者3g
 WeixinJSBridge.invoke('getNetworkType', {}, function (e) {
  // 在这里拿到e.err_msg,这里面就包含了所有的网络类型
  return e;
 });
};
export default wxUtils;

用法很简单:

export default class BaseComponent extends React.Component {
 componentDidMount() {
  try {
   //如果存在location说明是路由Component
   if (this.props.location) {
    // 全部禁用分享,想要分享自己开
    wxUtils.optionMenu(false);
   }
  } catch (e) {
   // console.log(e);
  }
 }
}

我写在了Base里面,主要是wxUtils.optionMenu(false);这一句

Javascript 相关文章推荐
Javascript倒计时代码
Aug 12 Javascript
div层的移动及性能优化
Nov 16 Javascript
JS如何将UTC格式时间转本地格式
Sep 04 Javascript
深入理解Javascript作用域与变量提升
Dec 09 Javascript
使用jQuery判断IE浏览器版本的代码
Jun 14 Javascript
分享jQuery插件的学习笔记
Jan 14 Javascript
只需五句话搞定JavaScript作用域(经典)
Jul 26 Javascript
基于ajax和jsonp的原生封装(实例)
Oct 16 Javascript
Angular-UI Bootstrap组件实现警报功能
Jul 16 Javascript
axios+Vue实现上传文件显示进度功能
Apr 14 Javascript
详解一些适用于Node.js的命名约定
Dec 08 Javascript
js数组相减简单示例【删除a数组所有与b数组相同元素】
Mar 04 Javascript
AngularJS表单验证功能分析
May 26 #Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
May 26 #Javascript
vue-cli+webpack在生成的项目中使用bootstrap实例代码
May 26 #Javascript
BootStrap中的Fontawesome 图标
May 25 #Javascript
Vue.js 中的 $watch使用方法
May 25 #Javascript
详解Javascript获取缓存和清除缓存API
May 25 #Javascript
Angularjs 实现动态添加控件功能
May 25 #Javascript
You might like
php中引用符号(&)的使用详解
2013/11/13 PHP
php批量删除cookie的简单实现方法
2015/01/26 PHP
php自定义函数实现二维数组按指定key排序的方法
2016/09/29 PHP
php实现的mongoDB单例模式操作类
2018/01/20 PHP
JavaScript 基础篇之对象、数组使用介绍(三)
2012/04/07 Javascript
转换字符串为json对象的方法详解
2013/11/29 Javascript
JS 新增Cookie 取cookie值 删除cookie 举例详解
2014/10/10 Javascript
JavaScript实现图片DIV竖向滑动的方法
2015/04/25 Javascript
延时加载JavaScript代码提高速度
2015/12/27 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
2016/08/29 Javascript
Angular.Js中ng-include指令的使用与实现
2017/05/07 Javascript
简单谈谈React中的路由系统
2017/07/25 Javascript
详解http访问解析流程原理
2017/10/18 Javascript
JS严格模式知识点总结
2018/02/27 Javascript
VUE重点问题总结
2018/03/19 Javascript
微信小程序之自定义组件的实现代码(附源码)
2018/08/02 Javascript
vue this.reload 方法 配置
2018/09/12 Javascript
vue调试工具vue-devtools安装及使用方法
2018/11/07 Javascript
vue的webcamjs集成方式
2020/11/16 Javascript
Python实现保证只能运行一个脚本实例
2015/06/24 Python
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
Django admin美化插件suit使用示例
2017/12/12 Python
对python读写文件去重、RE、set的使用详解
2018/12/11 Python
nohup后台启动Python脚本,log不刷新的解决方法
2019/01/14 Python
Python partial函数原理及用法解析
2019/12/11 Python
澳大利亚男士西服品牌:M.J.Bale
2018/02/06 全球购物
生物化工工艺专业应届生求职信
2013/10/08 职场文书
护士实习自我鉴定
2013/10/22 职场文书
《最大的“书”》教学反思
2014/02/14 职场文书
《七颗钻石》教学反思
2014/02/28 职场文书
产品设计开发计划书
2014/05/07 职场文书
会计学自荐信
2014/06/03 职场文书
归元寺导游词
2015/02/06 职场文书
小平您好观后感
2015/06/09 职场文书
Python类方法总结讲解
2021/07/26 Python