React Js 微信禁止復(fù)制鏈接分享禁止隱藏右上角菜單功能
更新時間:2017年05月26日 09:12:16 作者:wyk304443164
這篇文章主要介紹了React Js 微信禁止復(fù)制鏈接,分享,禁止隱藏右上角菜單的解決代碼,需要的朋友可以參考下
廢話不多說了,直接給大家貼代碼了,具體代碼如下所示:
/**
* 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');
}
/**
* 隱藏微信網(wǎng)頁底部的導航欄
* @param disable
*/
wxUtils.disabledToolbar = function (disable = true) {
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
// 通過下面這個API隱藏底部導航欄
WeixinJSBridge.call(disable ? 'hideToolbar' : 'showToolbar');
});
};
/**
* 獲取網(wǎng)絡(luò)類型
*/
wxUtils.getNetworkType = function () {
//network_type:wifi wifi網(wǎng)絡(luò) 2 network_type:edge 非wifi,包含3G/2G 3 network_type:fail 網(wǎng)絡(luò)斷開連接 4 network_type:wwan 2g或者3g
WeixinJSBridge.invoke('getNetworkType', {}, function (e) {
// 在這里拿到e.err_msg,這里面就包含了所有的網(wǎng)絡(luò)類型
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);這一句
相關(guān)文章
Can't?perform?a?React?state?update?on?an?unmoun
這篇文章主要為大家介紹了Can't?perform?a?React?state?update?on?an?unmounted?component報錯解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12
詳解在React中跨組件分發(fā)狀態(tài)的三種方法
這篇文章主要介紹了詳解在React中跨組件分發(fā)狀態(tài)的三種方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08
在?React?中使用?Context?API?實現(xiàn)跨組件通信的方法
在React中,ContextAPI是一個很有用的特性,可用于組件間的狀態(tài)共享,它允許跨組件傳遞數(shù)據(jù)而無需通過每個組件手動傳遞props,本文給大家介紹在?React?中如何使用?Context?API?來實現(xiàn)跨組件的通信,感興趣的朋友一起看看吧2024-09-09
React?中使用?Redux?的?4?種寫法小結(jié)
這篇文章主要介紹了在?React?中使用?Redux?的?4?種寫法,Redux 一般來說并不是必須的,只有在項目比較復(fù)雜的時候,比如多個分散在不同地方的組件使用同一個狀態(tài),本文就React使用?Redux的相關(guān)知識給大家介紹的非常詳細,需要的朋友參考下吧2022-06-06

