vue 2.0爬坑:ie兼容性问题
问题: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' } };