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 相关文章推荐
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
Aug 13 Javascript
举例详解JavaScript中Promise的使用
Jun 24 Javascript
JS实现slide文字框缩放伸展效果代码
Nov 05 Javascript
jQuery validate验证插件使用详解
May 11 Javascript
React创建组件的三种方式及其区别
Jan 12 Javascript
动态加载css方法实现和深入解析
Jan 18 Javascript
jquery mobile实现可折叠的导航按钮
Mar 11 Javascript
轻松理解JavaScript之AJAX
Mar 15 Javascript
详解升级react-router 4 踩坑指南
Aug 14 Javascript
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
Dec 20 Javascript
在vue+element ui框架里实现lodash的debounce防抖
Nov 13 Javascript
js实现可爱的气泡特效
Sep 05 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代码片段
2015/09/24 PHP
Smarty简单生成表单元素的方法示例
2016/05/23 PHP
php简单截取字符串代码示例
2016/10/19 PHP
php 截取utf-8格式的字符串实例代码
2016/10/30 PHP
PHP正则表达式匹配替换与分割功能实例浅析
2017/02/04 PHP
疯掉了,尽然有js写的操作系统
2007/04/23 Javascript
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
一个cssQuery对象 javascript脚本实现代码
2009/07/21 Javascript
JQuery 动态扩展对象之另类视角
2010/05/25 Javascript
打开新窗口关闭当前页面不弹出关闭提示js代码
2013/03/18 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
jquery 中的each()跳出循环的语句
2014/05/23 Javascript
jQuery三级下拉列表导航菜单代码分享
2020/04/15 Javascript
JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析
2016/05/24 Javascript
浅谈html转义及防止javascript注入攻击的方法
2016/12/04 Javascript
jquery中封装函数传递当前元素的方法示例
2017/05/05 jQuery
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
2017/05/26 Javascript
ES6知识点整理之函数数组参数的默认值及其解构应用示例
2019/04/17 Javascript
简单使用webpack打包文件的实现
2019/10/29 Javascript
[04:10]DOTA2英雄梦之声_第11期_圣堂刺客
2014/06/21 DOTA
Python实现导出数据生成excel报表的方法示例
2017/07/12 Python
python3监控CentOS磁盘空间脚本
2018/06/21 Python
Python利用递归实现文件的复制方法
2018/10/27 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
2019/08/09 Python
Python3.7黑帽编程之病毒篇(基础篇)
2020/02/04 Python
波兰运动鞋网上商店:e-Sporting
2018/02/16 全球购物
国外软件测试工程师面试题
2016/12/09 面试题
PyQt 如何创建自定义QWidget
2021/03/24 Python
计算机应用毕业生自荐信
2013/10/23 职场文书
汽车维修专业个人求职信范文
2014/01/01 职场文书
《老王》教学反思
2014/02/23 职场文书
论文指导教师评语
2014/04/28 职场文书
销售提升方案
2014/06/07 职场文书
幼儿园小班个人工作总结
2015/02/12 职场文书
廉洁自律心得体会2016
2016/01/13 职场文书
Python Pandas解析读写 CSV 文件
2022/04/11 Python