Maison  >  Article  >  interface Web  >  Explication détaillée de l'analyse de cas de WeChat interdisant la copie du partage de liens et interdisant le masquage de la fonction de menu dans le coin supérieur droit de React Js

Explication détaillée de l'analyse de cas de WeChat interdisant la copie du partage de liens et interdisant le masquage de la fonction de menu dans le coin supérieur droit de React Js

黄舟
黄舟original
2017-05-26 10:14:282723parcourir

Cet article présente principalement le code de solution pour React Js WeChat interdit la copie de liens, le partage et le masquage du menu dans le coin supérieur droit. Les amis dans le besoin peuvent s'y référer <.>

Plus de bêtises, laissez-moi juste vous poster le code. Le code spécifique est le suivant :

/**
 * 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(&#39;WeixinJSBridgeReady&#39;, onBridgeReady(true), false);
  } else if (document.attachEvent) {
   document.attachEvent(&#39;WeixinJSBridgeReady&#39;, onBridgeReady(true));
   document.attachEvent(&#39;onWeixinJSBridgeReady&#39;, onBridgeReady(true));
  }
 } else {
  onBridgeReady(true);
 }
}
/**
 * 开启menu
 */
function openOptionMenu() {
 if (typeof WeixinJSBridge === "undefined") {
  if (document.addEventListener) {
   document.addEventListener(&#39;WeixinJSBridgeReady&#39;, onBridgeReady(false), false);
  } else if (document.attachEvent) {
   document.attachEvent(&#39;WeixinJSBridgeReady&#39;, onBridgeReady(false));
   document.attachEvent(&#39;onWeixinJSBridgeReady&#39;, onBridgeReady(false));
  }
 } else {
  onBridgeReady(false);
 }
}
function onBridgeReady(disable = true) {
 if (typeof WeixinJSBridge !== "undefined") WeixinJSBridge.call(disable ? &#39;hideOptionMenu&#39; : &#39;showOptionMenu&#39;);
}
/**
 * 隐藏微信网页底部的导航栏
 * @param disable
 */
wxUtils.disabledToolbar = function (disable = true) {
 document.addEventListener(&#39;WeixinJSBridgeReady&#39;, function onBridgeReady() {
  // 通过下面这个API隐藏底部导航栏
  WeixinJSBridge.call(disable ? &#39;hideToolbar&#39; : &#39;showToolbar&#39;);
 });
};
/**
 * 获取网络类型
 */
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(&#39;getNetworkType&#39;, {}, function (e) {
  // 在这里拿到e.err_msg,这里面就包含了所有的网络类型
  return e;
 });
};
export default wxUtils;
L'utilisation est très simple :

export default class BaseComponent extends React.Component {
 componentDidMount() {
  try {
   //如果存在location说明是路由Component
   if (this.props.location) {
    // 全部禁用分享,想要分享自己开
    wxUtils.optionMenu(false);
   }
  } catch (e) {
   // console.log(e);
  }
 }
}
Je. je l'ai écrit en Base, principalement c'est wxUtils.optionMenu(false)

;

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn