https://www.jianshu.com/p/35c85b10cadevue
說到底仍是es6鬧得,ie瀏覽器不支持es6node
實際碰到的問題分兩步才解決webpack
1. 直接打開是空白頁:讓ie支持vuees6
解決方式:安裝 "babel-polyfill" 便可。web
命令:cnpm install --save-dev babel-polyfill //我用的是淘寶鏡像,因此是cnpm,若是你沒有安裝使用npm 便可。vue-cli
在入口main.js文件引入:import 'babel-polyfill'npm
最後一步,在build文件夾下找到webpack.base.conf.js.瀏覽器
將第10行的內容替換一下便可。babel
使用vue-cli3建立的項目,在谷歌瀏覽器運行沒有問題,但在火狐瀏覽器、ie瀏覽器和edge瀏覽器上運行都會報錯(就測試了這幾個瀏覽器,其它的沒測),具體報錯內容以下:
websocket
// 火狐瀏覽器 報錯以下 "載入頁面時與 ws://localhost:8080/sockjs-node/631/u0rsdsy0/websocket 的鏈接中斷" // ie瀏覽器 報如下錯誤 SCRIPT5022: SecurityError sockjs.js (1683,3) // edge瀏覽器 報如下錯誤 SCRIPT12017: SCRIPT12017: WebSocket Error: SECURITY_ERR, Cross zone connection not allowed
解決方法:
1. 找到/node_modules/sockjs-client/dist/sockjs.js
2.找到代碼的 1605行
try { // self.xhr.send(payload); // 把這行註釋掉 } catch (e) { self.emit('finish', 0, ''); self._cleanup(false); }
3.刷新,搞定
剛開始覺得是兼容性問題,折騰了很久,發現不是,後來找到一篇大佬寫的文章,才得以解決