export default defineNuxtRouteMiddleware((to, from) => { // skip middleware on server if (import.meta.server) return // 判断是否为微信浏览器 if (!isWechat()) return // 防止微信浏览器修改默认字体大小 if (typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function") { handleFontSize(); } else { if (document.addEventListener) { document.addEventListener("WeixinJSBridgeReady", handleFontSize, false); } else if (document.attachEvent) { document.attachEvent("WeixinJSBridgeReady", handleFontSize); document.attachEvent("onWeixinJSBridgeReady", handleFontSize); } } function handleFontSize() { // 设置网页字体为默认大小 WeixinJSBridge.invoke('setFontSizeCallback', { 'fontSize': 0 }); // 重写设置网页字体大小的事件 WeixinJSBridge.on('menu:setfont', function () { WeixinJSBridge.invoke('setFontSizeCallback', { 'fontSize': 0 }); }); } if (sessionStorage.getItem('wechat_user')) return; // 设置 session ,表示用户此次会话已经授权 sessionStorage.setItem('wechat_user', true) const baseURL = useRuntimeConfig().public.apiGateway window.location.href = baseURL + '/Wechat.Wechat/getAccess?refer_url=' + encodeURIComponent(window.location.href); });