解決瀏覽器端 globalThis is not defined 報錯


解決瀏覽器端 globalThis is not defined 報錯

2021年10月25日 17:15  ·  閱讀 1817
解決瀏覽器端 globalThis is not defined 報錯

場景:

最近在使用 nuxt.js 做服務端渲染的移動端應用時,我們在app里引用h5的頁面。結果上線后在部分機型(例如:Mozilla/5.0 (Linux; Android 8.1.0; M1822 Build/OPM1.171019.026; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/65.0.3325.110 Mobile Safari/537.36)里頁面基本結構能加載出來但是頁面不會發起其他網絡請求。用 vConsole 調試也看不到報錯,最后安卓開發同事調試才發現報錯。如下圖:

c16dac7b65cde29783a83fa58e35dade.png

解決辦法:

在html頭部加上如下代碼:

<head> <script> this.globalThis || (this.globalThis = this) </script> ... </head> 復制代碼

思路是:既然全局上沒有定義 globalThis 那我們就判斷一下,如果沒有的情況下,定義全局的一個 globalThis 指向全局 this 對象(也就是 window 對象)。(注:支持 globalThis 的瀏覽器,其指向就是 window 對象,更多信息可在這里查看:developer.mozilla.org/en-US/docs/…

關鍵詞:globalThis is not defined, nuxt.js, globalThis

分類:
前端
標簽:
評論
 
 
熱門評論
多厘的頭像
開發 @ 小有記4月前
來來來, 收個膝蓋.. [害羞]
點贊
1
(作者)4月前
[偷笑]
點贊
回復
全部評論 6
最新
最熱
 
欲可非的頭像
前端開發3月前
感謝分享,解決了我的企微和微信瀏覽器問題
1
回復
 
鴨鴨不在乎T_T的頭像
解決了我的問題 [贊],新項目用Vue3和Element Plus,也是這個報錯
1
回復
 
多厘的頭像
開發 @ 小有記4月前
來來來, 收個膝蓋.. [害羞]
點贊
1
(作者)4月前
[偷笑]
點贊
回復
Tims18294的頭像
前端開發5月前
在一個 chrome 70版本上復現了次問題,用上述方法解決了。感謝了 [憨笑] [憨笑] [憨笑]
點贊
1
(作者)4月前
不客氣 [愉快]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM