React Js 微信禁止複製鏈接,分享,禁止隱藏右上角菜單

本文出自:

http://blog.csdn.net/wyk304443164

/**
 * 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);這一句

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章