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 相关文章推荐
js中的hasOwnProperty和isPrototypeOf方法使用实例
Jun 06 Javascript
利用jQuery和CSS将背景图片拉伸
Oct 16 Javascript
基于jquery实现的鼠标悬停提示案例
Dec 11 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
Jan 05 Javascript
Js利用prototype自定义数组方法示例
Oct 20 Javascript
AnglarJs中的上拉加载实现代码
Feb 08 Javascript
微信小程序动态添加view组件的实例代码
May 23 Javascript
详解element-ui中表单验证的三种方式
Sep 18 Javascript
在Vue 中实现循环渲染多个相同echarts图表
Jul 20 Javascript
在Vue中使用Select选择器拼接label的操作
Oct 22 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
Dec 14 Vue.js
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
Jan 29 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/11/28 PHP
PHPThumb PHP 图片缩略图库
2012/03/11 PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
2016/01/07 PHP
常见的原始JS选择器使用方法总结
2014/04/09 Javascript
js使用ajax读博客rss示例
2014/05/06 Javascript
AngularJS基础学习笔记之表达式
2015/05/10 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
2016/12/02 Javascript
Vue.js基础指令实例讲解(各种数据绑定、表单渲染大总结)
2017/07/03 Javascript
jQuery列表检索功能实现代码
2017/07/17 jQuery
JS简单获得节点元素的方法示例
2018/02/10 Javascript
jQuery中元素选择器(element)简单用法示例
2018/05/14 jQuery
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
layui清除radio的选中状态实例
2019/11/14 Javascript
echarts实现晶体球面投影的实例教程
2020/10/10 Javascript
详解Python的Django框架中的templates设置
2015/05/11 Python
Python中functools模块的常用函数解析
2016/06/30 Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
2017/03/12 Python
Request的中断和ErrorHandler实例解析
2018/02/12 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
Jupyter notebook在mac:linux上的配置和远程访问的方法
2019/01/14 Python
对python numpy.array插入一行或一列的方法详解
2019/01/29 Python
python 中的列表生成式、生成器表达式、模块导入
2019/06/19 Python
如何解决django-celery启动后迅速关闭
2019/10/16 Python
pd.DataFrame统计各列数值多少的实例
2019/12/05 Python
python多线程实现代码(模拟银行服务操作流程)
2020/01/13 Python
Python CSS选择器爬取京东网商品信息过程解析
2020/06/01 Python
高中班主任评语大全
2014/04/25 职场文书
保护环境倡议书范文
2014/05/13 职场文书
湖南省党的群众路线教育实践活动总结会议新闻稿
2014/10/21 职场文书
简历自我评价优缺点
2015/03/11 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
2016年11月份红领巾广播稿
2015/12/21 职场文书
关于flex 上下文中自动 margin的问题(完整例子)
2021/05/20 HTML / CSS
Redis 操作多个数据库的配置的方法实现
2022/03/23 Redis
Oracle用户管理及赋权
2022/04/24 Oracle