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的最佳方法分享
Oct 21 Javascript
Ubuntu 11.10 安装Node.js的方法
Nov 30 Javascript
jQuery动画效果-slideUp slideDown上下滑动示例代码
Aug 28 Javascript
结合JQ1.9通过js正则判断各种浏览器版本的方法
Dec 30 Javascript
不能不知道的10个angularjs英文学习网站
Mar 23 Javascript
jQuery插件ajaxFileUpload使用详解
Jan 10 Javascript
jQuery中ztree 点击文本框弹出下拉框的实例代码
Feb 05 Javascript
jQuery使用EasyUi实现三级联动下拉框效果
Mar 08 Javascript
JavaScript实现二叉树定义、遍历及查找的方法详解
Dec 20 Javascript
React Hooks的深入理解与使用
Nov 12 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
Aug 15 Javascript
Vue设置长时间未操作登录自动到期返回登录页
Jan 22 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支持页面回退的两种方法[转]
2007/02/14 PHP
生成php程序的php代码
2008/04/07 PHP
PHP动态规划解决0-1背包问题实例分析
2015/03/23 PHP
求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路
2015/09/20 PHP
微信利用PHP创建自定义菜单的方法
2016/08/01 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
Yii2框架redis基本应用示例
2018/07/13 PHP
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
js替代copy(示例代码)
2013/11/27 Javascript
javascript连续赋值问题
2015/07/08 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
js下载文件并修改文件名
2017/05/08 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
jQuery实现条件搜索查询、实时取值及升降序排序的方法分析
2019/05/04 jQuery
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
layui监听单元格编辑前后交互的例子
2019/09/16 Javascript
JQuery 实现文件下载的常用方法分析
2019/10/29 jQuery
vue created钩子函数与mounted钩子函数的用法区别
2020/11/05 Javascript
[51:05]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第一局
2016/03/06 DOTA
python bmp转换为jpg 并删除原图的方法
2018/10/25 Python
对python中Json与object转化的方法详解
2018/12/31 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
2019/08/17 Python
pyenv虚拟环境管理python多版本和软件库的方法
2019/12/26 Python
Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例
2020/03/14 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
印度化妆品购物网站:Nykaa
2018/07/22 全球购物
英国现代家具和照明购物网站:Heal’s
2019/10/30 全球购物
简单的辞职信范文
2014/01/18 职场文书
创先争优一句话承诺
2014/05/29 职场文书
百万英镑观后感
2015/06/09 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书
mysql中整数数据类型tinyint详解
2021/12/06 MySQL