vue 專案完美執行在IE或者360瀏覽器相容模式下 踩坑筆記
阿新 • • 發佈:2021-02-03
技術標籤:vue
vue 專案完美執行在IE或者360瀏覽器相容模式下 踩坑筆記
場景:最近的專案測試大大發現在360相容模式下百頁。然而這個相容模式下用的是IE核心 也就是vue專案需要相容IE。
首先解決 IE不支援 Promise
解決辦法
引入 <script src = "https://cdn.polyfill.io/v2/polyfill.min.js"></script> 或 <script type="text/javascript" src ="https://cdn.polyfill.io/v2/polyfill.min.js?features=es6"></script>
如果有更好的辦法,請留言 相互學習下哈!!!
執行專案發現還是報錯CRIPT5022: SecurityError sockjs.js (1683,5)
解決辦法
1. 找到/node_modules/sockjs-client/dist/sockjs.js
2. 找到程式碼的 1605行
try {
// self.xhr.send(payload); // 註釋掉
} catch (e) {
self.emit('finish', 0, '');
self._cleanup(false);
}
到這裡,頁面正常顯示,但是我發現跳轉不太好使了。使用 vue-router 位址列改變,但是需要重新整理頁面才能生效
解決辦法
// App.vue下修改如下 export default { name: 'App', mounted(){ function checkIE(){ return '-ms-scroll-limit' in document.documentElement.style && '-ms-ime-align' in document.documentElement.style } if (checkIE()) { window.addEventListener('hashchange', () => { var currentPath = window.location.hash.slice(1); if (this.$route.path !== currentPath) { this.$router.push(currentPath) } }, false) } } }
專案完美執行