前言
因为工作的需要,学习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安装
rush:bash;">
npm install --save-dev babel-polyfill
在入口文件倒入即可
rush:plain;">
import 'babel-polyfill'
如果也是用了官方脚手架vue-cli,还需要在webpack.config.js配置文件中做各修改,用
rush:js;">
module.exports = {
entry: {
app: ["babel-polyfill","./src/main.js"]
}
};
替换
rush:js;">
module.exports = {
entry: {
app: './src/main.js'
}
}
总结
好了,问题到这就解决了,以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持。
原文地址:https://www.jb51.cc/vue/37830.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。