91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

發布時間:2020-10-21 03:39:02 來源:腳本之家 閱讀:325 作者:Sam_Lii 欄目:web開發

前言: 項目使用vue-cli版本2.9.3 ,vue-router使用webpackChunkName實現按需加載.

vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

BUG描述:該報錯在項目上線一段時間后,有用戶反映頁面無法正常游覽 (后面以問題1/問題2區分)

問題1.導航點擊無法正常跳轉,console打印:Error:Loading chunk {n} failed.

報錯截圖vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

問題2.頁面全白,console打印:Uncaught SyntaxError:Unexpected token <

報錯截圖: vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

經過一番折騰,初步定位問題1在經過build/webpack.prod.conf.jschunkhash打包后的JS文件hash值會有變更,因為每次更新代碼到線上都會刪除舊的dist目錄,將最新的dist目錄copy上傳提供后臺更新. 在更新代碼的這個過程用戶停留在頁面上,當用戶在更新完后重新操作就會導致報錯

vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

問題1解決方法:捕獲路由報錯. (思路來源:https://www.jb51.net/article/147427.htm)

routers.onError((err) => {
 const pattern = /Loading chunk (\d)+ failed/g;
 const isChunkLoadFailed = err.message.match(pattern);
 if (isChunkLoadFailed) {
  let chunkBool = sessionStorage.getItem('chunkError');
  let nowTimes = Date.now();
  if (chunkBool === null || chunkBool && nowTimes - parseInt(chunkBool) > 60000) {//路由跳轉報錯,href手動跳轉
   sessionStorage.setItem('chunkError', 'reload');
   const targetPath = routers.history.pending.fullPath;
   window.location.href = window.location.origin + targetPath;
  }else if(chunkBool === 'reload'){ //手動跳轉后依然報錯,強制刷新
   sessionStorage.setItem('chunkError', Date.now());
   window.location.reload(true);
  }
 }
})

問題2在Network查看js文件加載的時候發現某個js文件Response Headercontent-type異常,正常情況返回content-type: application/javascript. 但是有一個js響應的內容為HTML, js無法識別<符號導致拋出報錯

vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

vue-cli 打包后提交到線上出現 "Uncaught SyntaxError:Unexpected token" 報錯

問題2目前還在與后臺商量如何解決,解決后會更新解決方法分享.有同學遇到同樣的問題可以一起討論或提出更好的解決方案參考學習.★★★

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平利县| 县级市| 光山县| 天全县| 安西县| 铜梁县| 胶州市| 青海省| 绥宁县| 子洲县| 乐东| 闽清县| 昭平县| 兴和县| 西盟| 濮阳县| 宜宾市| 阿拉善右旗| 报价| 沈阳市| 西峡县| 蒙山县| 白朗县| 乡宁县| 津市市| 肇庆市| 汉中市| 华蓥市| 恩施市| 新密市| 和龙市| 会昌县| 通榆县| 新宾| 南充市| 鄂伦春自治旗| 定安县| 文成县| 东光县| 虞城县| 陇南市|