vue项目在IE下打开空白问题
问题阐述:
vue-cli搭建vue的开发框架,Chrome、360浏览器都能正常显示的页面,在IE浏览器下就显示不出来了。
console 显示vuex requires a Promise polyfill in this browser.
- 问题原因:ie9和一些低版本的高级浏览器对es6新语法并不支持
- 解决方案:安装babel-polyfill插件
npm i babel-polyfill
- 在入口文件第一句引入
import "babel-polyfill"import 'babel-polyfill';
- 原理:Babel默认只转换新的JavaScript语法(syntax),如箭头函数等,而不转换新的API,比如Iterator、Generator、Set、Maps、Proxy、Reflect、Symbol、Promise等全局对象,以及一些定义在全局对象上的方法(比如Object.assign)都不会转码;因此我们需要polyfill;
依赖版本的错误
例如:Swiper 是专门针对移动端写的
- swiper2:pc端(IE7+),部分移动端浏览器
- swiper3:pc端(IE10+),部分移动端浏览器
- swiper4:移动端浏览器、部分PC端浏览器、IE10+
若pc端要求兼容性较好则使用swiper2(不推荐使用swiper做pc端,推荐使用另一插件superslide),只做移动端使用swiper4
官网介绍:https://www.swiper.com.cn/about/us/