问题1
解决方法:
1.找到/node_modules/sockjs-client/dist/sockjs.js
2.将self.xhr.send(payload);注释掉
问题2
原因:
项目中引用了math.js组件,不兼容ie,果断切换bignumber用来进行精度计算。
问题3
css样式中,使用的/deep/在ie中不生效
解决方法
/deep/ 只能在像 less , sass 等css预处理器中使用,在原生css中使用无效,所以原生css当中应使用 >>> 。
问题4
ie11浏览器中不能兼容el-image-viewer组件,
这是el-image-viewer的使用方法(不兼容ie11,因为element没有将此组件暴露出去并经过webpack打包,直接引入该组件的话IE有兼容性问题)
<template>
<div>
<el-button @click="onPreview">预览</el-button>
<el-image-viewer v-if="showViewer" :on-close="closeViewer" :url-list="[url]" />
</div>
</template>
<script>
// 导入组件
import ElImageViewer from 'element-ui/packages/image/src/image-viewer'
export default {
name: 'Index',
components: { ElImageViewer },
data() {
return {
showViewer: false, // 显示查看器
url:'https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg'
}
},
methods: {
onPreview() {
this.showViewer = true
},
// 关闭查看器
closeViewer() {
this.showViewer = false
}
}
</script>
为了兼容ie11
这里我们利用已经暴露的Image组件包含的el-image-viewer来重新实现我们的目的,它由于暴露出来并经过webpack打包编译
因此以下方法是兼容IE的(推荐使用此方法,也无须再引入任何组件!):
<template>
<div>
<el-button @click="onPreview">预览</el-button>
<!-- 图片查看器(兼容ie) -->
<el-image
ref="preview"
class="hideImgDiv"
:src="url"
:preview-src-list="[url]"
z-index="9999"
></el-image>
</div>
</template>
<script>
export default {
name: 'Index',
data() {
return {
url:'https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg'
}
},
methods: {
onPreview() {
//调用image组件中的大图浏览图片方法
this.$refs.preview.clickHandler();
},
}
</script>
css要隐藏一下:
/*隐藏el-image图片组件中不需要展示的的img标签*/
.hideImgDiv {
/deep/ .el-image__inner {
display: none;
}
}
OK,结束。