React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
程序员文章站
2022-06-11 22:35:31
废话不多说了,直接给大家贴代码了,具体代码如下所示:
/**
* created by wuyakun on 2017/5/23.
*/let wxuti...
废话不多说了,直接给大家贴代码了,具体代码如下所示:
/** * 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);这一句