解决Vue+Element ui开发中碰到的IE问题


Posted in Javascript onSeptember 03, 2018

IE9样式错乱,IE11无法正常加载v-loading等问题

引入了babel-polyfill插件,依然出现”polyfill-eventsource added missing EventSource to window”的奇怪问题(ie所有版本都有出现)

第一步:安装babel-ployfill (已安装请跳过此步骤)

yarn add babel-ployfill

修改webpack打包配置文件:webpack.bash.conf.js

// 引入babel-ployfill
 var babelPloyfill = require('babel-ployfill')

 // ...
 // 修改entry字段
 entry: {
 // app: './src/main.js'
 app: ["babel-polyfill", "./src/main.js"]
 },

重新运行,v-loading等问题完美解决, 原因可能是v-loading是调用的ES6的Object的setter和getter方法来实现的,babel-ployfill报错,未能将ES6的方法完全转换为IE9支持的ES5方法

IE9样式错乱

可能的原因1,element-ui 中使用了 display: flex; 样式,IE9不支持次样式,解决方法为,排查下各组件,避免使用带 display: flex; 的组件

可能的原因2,IE9浏览器过于老旧,单文件最大行数超过一定限制将不再读取后边的内容,因此可以尝试分割css文件和打包的js文件

分割js文件,最好的方法是采用vue的路由懒加载,这样打包时,vue-loader会把每个路由对应的js文件打包在一起。同时注意组件的合理划分,避免单组件体积过大,并提高组件的复用性

分割css文件,通过yarn add css-split-webpack-plugin -D安装css-split-webpack-plugin包来分割组件,修改

webpack.prod.conf.js文件

// 引入依赖
 var CSSSplitWebpackPlugin = require('css-split-webpack-plugin').default

 // 在css打包插件后面新增css分割插件
 new ExtractTextPlugin({
 filename: utils.assetsPath('css/[name].[contenthash].css')
 }),
 // 新增的css分割插件
 new CSSSplitWebpackPlugin({
 size: 4000,
 filename: utils.assetsPath('css/[name]-[part].[ext]')
 }),

以上,写bug我最擅长了,找问题就不是我擅长的了@_@!。虽然问题解决了,但是可能分析的不对,希望大神拍砖指导,也希望对新手小白有一些帮助。

这篇解决Vue+Element ui开发中碰到的IE问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery实现自定义tooltip示例代码
Feb 12 Javascript
jQuery产品间断向下滚动效果核心代码
May 08 Javascript
JavaScript italics方法入门实例(把字符串显示为斜体)
Oct 17 Javascript
js阻止默认浏览器行为与冒泡行为的实现代码
May 15 Javascript
js实现简单的碰壁反弹效果
Aug 30 Javascript
用jQuery.ajaxSetup实现对请求和响应数据的过滤
Dec 20 Javascript
无法获取隐藏元素宽度和高度的解决方案
Mar 07 Javascript
vue 搭建后台系统模块化开发详解
May 01 Javascript
微信小程序封装分享与分销功能过程解析
Aug 13 Javascript
jquery更改元素属性attr()方法操作示例
May 22 jQuery
微信小程序scroll-view实现滚动到锚点左侧导航栏点餐功能(点击种类,滚动到锚点)
Jun 11 Javascript
JavaScript canvas实现雨滴特效
Jan 10 Javascript
webpack4 处理SCSS的方法示例
Sep 03 #Javascript
解决vue打包css文件中背景图片的路径问题
Sep 03 #Javascript
解决Vue2.0中使用less给元素添加背景图片出现的问题
Sep 03 #Javascript
vue组件(全局,局部,动态加载组件)
Sep 02 #Javascript
详解jQuery中的easyui
Sep 02 #jQuery
vue-cli脚手架的安装教程图解
Sep 02 #Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
Sep 02 #Javascript
You might like
谈一谈收音机的高放电路
2021/03/02 无线电
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
PHP递归实现快速排序的方法示例
2017/12/18 PHP
js根据日期判断星座的示例代码
2014/01/23 Javascript
动态添加删除表格行的js实现代码
2014/02/28 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
Bootstrap框架下下拉框select搜索功能
2020/03/26 Javascript
Ajax的概述与实现过程
2016/11/18 Javascript
Javascript同时声明一连串(多个)变量的方法
2017/01/23 Javascript
JavaScript实现替换字符串中最后一个字符的方法
2017/03/07 Javascript
Vue组件创建和传值的方法
2018/08/17 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
JavaScript 几种循环方式以及模块化的总结
2020/09/03 Javascript
jQuery实现穿梭框效果
2021/01/19 jQuery
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
python sys模块sys.path使用方法示例
2013/12/04 Python
实例讲解Python中函数的调用与定义
2016/03/14 Python
Python守护线程用法实例
2017/06/23 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
python assert的用处示例详解
2019/04/01 Python
python实现抖音点赞功能
2019/04/07 Python
pyqt 实现QlineEdit 输入密码显示成圆点的方法
2019/06/24 Python
解决Django删除migrations文件夹中的文件后出现的异常问题
2019/08/31 Python
python循环嵌套的多种使用方法解析
2019/11/29 Python
Python 3.8 新功能大揭秘【新手必学】
2020/02/05 Python
CSS3 选择器 伪类选择器介绍
2012/01/21 HTML / CSS
HelloFresh奥地利:立即订购烹饪盒
2019/02/22 全球购物
会计职业生涯规划书
2014/01/13 职场文书
我的五年职业生涯规划
2014/01/23 职场文书
2014年人力资源部工作总结
2014/11/19 职场文书
户外拓展训练感想
2015/08/07 职场文书
2016春季幼儿园大班开学寄语
2015/12/03 职场文书
在K8s上部署Redis集群的方法步骤
2021/04/27 Redis
nginx实现动静分离的方法示例
2021/11/07 Servers
python神经网络学习 使用Keras进行简单分类
2022/05/04 Python