React Js 微信禁止復(fù)制鏈接分享禁止隱藏右上角菜單功能
更新時(shí)間: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)頁底部的導(dǎo)航欄
* @param disable
*/
wxUtils.disabledToolbar = function (disable = true) {
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
// 通過下面這個(gè)API隱藏底部導(dǎo)航欄
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)文章
react中路由跳轉(zhuǎn)及傳參的實(shí)現(xiàn)
本文主要介紹了react中路由跳轉(zhuǎn)及傳參的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05
Can't?perform?a?React?state?update?on?an?unmoun
這篇文章主要為大家介紹了Can't?perform?a?React?state?update?on?an?unmounted?component報(bào)錯(cuò)解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
詳解在React中跨組件分發(fā)狀態(tài)的三種方法
這篇文章主要介紹了詳解在React中跨組件分發(fā)狀態(tài)的三種方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
在?React?中使用?Context?API?實(shí)現(xiàn)跨組件通信的方法
在React中,ContextAPI是一個(gè)很有用的特性,可用于組件間的狀態(tài)共享,它允許跨組件傳遞數(shù)據(jù)而無需通過每個(gè)組件手動(dòng)傳遞props,本文給大家介紹在?React?中如何使用?Context?API?來實(shí)現(xiàn)跨組件的通信,感興趣的朋友一起看看吧2024-09-09
React?中使用?Redux?的?4?種寫法小結(jié)
這篇文章主要介紹了在?React?中使用?Redux?的?4?種寫法,Redux 一般來說并不是必須的,只有在項(xiàng)目比較復(fù)雜的時(shí)候,比如多個(gè)分散在不同地方的組件使用同一個(gè)狀態(tài),本文就React使用?Redux的相關(guān)知識給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-06-06
React純前端模擬實(shí)現(xiàn)登錄鑒權(quán)
這篇文章主要為大家詳細(xì)介紹了React純前端模擬實(shí)現(xiàn)登錄鑒權(quán)的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04

