解决nuxt引入插件在IE中的兼容问题

1.pc页面在IE11报错

最近在做PC端的页面,引入了three.js(3d动画)和vue-baidu-map(百度地图)以及vue-awesome-swiper(定制轮播,采用了高版本的swiper),在chrome浏览器和edg是没有问题的,但是在ie11以及下是不行的,并且因为报错阻塞了页面一些业务逻辑的运行。

先来看一下在IE11中的报错(这里只举例引入vue-awesome-swiper引发的错误)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201223132201956.png
看到错误信息:
在这里插入图片描述

2.错误原因

可以看到是因为引入swiper(vue-awesome-swiper安装时会同时安装swiper)的包,导致的错误,而在这个文件中有许多的es6的语法,应该是没有编译导致的错误

3.解决方案

因为我采用的是vue的nuxt,方法如下:
修改nuxt.config,增加:

build: {
    transpile: [
      'swiper',
      'dom7',
      'vue-baidu-map',
      'three'
    ],
  }

transpile表示需要使用Babel转换特定的依赖项,是一个数组。
可参考nuxt 的 api:https://zh.nuxtjs.org/docs/2.x/configuration-glossary/configuration-build/#transpile


版权声明:本文为haochangdi123原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。