前言
因為工作的需要,學習Vue2.0也有一段時間,最近在用Vue2.0的官方腳手架工具構建的項目,chrome中跑一直沒有問題,但ie11打開出現了bug:
問題
ie11打開vue2.0項目空白,控制臺報錯 vuex requires a Promise polyfill in this browser;
原因
Babel 默認只轉換新的 JavaScript 句法(syntax),而不轉換新的 API ,比如 Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise 等全局對象,以及一些定義在全局對象上的方法(比如 Object.assign)都不會轉碼。為了解決這個問題,我們使用一種叫做 Polyfill(代碼填充,也可譯作兼容性補丁) 的技術。
簡單地說,polyfill即是在當前運行環境中用來復制(意指模擬性的復制,而不是拷貝)尚不存在的原生 api 的代碼。
解決
安裝babel-polyfill
步驟
npm安裝
npm install --save-dev babel-polyfill
在入口文件倒入即可
import 'babel-polyfill'
如果也是用了官方腳手架vue-cli,還需要在webpack.config.js配置文件中做各修改,用
module.exports = { entry: { app: ["babel-polyfill", "./src/main.js"] }};替換
module.exports = { entry: { app: './src/main.js'}}總結
好了,問題到這就解決了,以上就是這篇文章的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對武林網的支持。
新聞熱點
疑難解答