問題:Vue2.0的官方腳手架工具構建的項目,chrome中跑一直沒有問題,但ie打開出現了bug:
原因:Babel 默認只轉換新的 JavaScript 句法(syntax),而不轉換新的 API ,比如 Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise 等全局對象,以及一些定義在全局對象上的方法(比如 Object.assign)都不會轉碼。為了解決這個問題,我們使用一種叫做** Polyfill**(代碼填充,也可譯作兼容性補丁) 的技術。 簡單地說,polyfill即是在當前運行環境中用來復制(意指模擬性的復制,而不是拷貝)尚不存在的原生 api 的代碼。
方案:安裝babel-polyfill
步驟
1.安裝babel-polyfill
npm install --save-dev babel-polyfill
2.然后再main.js中引入
import 'babel-polyfill'
3.如果也是用了官方腳手架vue-cli,還需要在webpack.config.js
配置文件中做各修改,用
module.exports = { entry: { app: ["babel-polyfill", "./src/main.js"] // 替換 app: './src/main.js' } };