webpack使用swiper5时IE报错,chrome正常,有大佬遇到吗

发布于 2022-09-11 23:02:12 字数 408 浏览 15 评论 0

"swiper": "^5.1.0"

使用方式:

import Swiper from "swiper";
import "swiper/css/swiper.css";

new Swiper('.swiper-container1', options);

报错如下:

ERROR in static/js/1.a8e063dc2fbe83b00120.js from UglifyJs
Unexpected token: name «Dom7», expected: punc «;» [./node_modules/dom7/dist/dom7.modular.js:16,6][static/js/1.a8e063dc2fbe83b00120.js:19926,6]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

痴情换悲伤 2022-09-18 23:02:12

怀疑:UglifyJs 不支持 ES6,用 Terser。

就像说晚安 2022-09-18 23:02:12
  • 首先需要降级uglify-webpack-plugin到1.x版本
  • 其次需要在babel-loader中include这个dom库,swiper5中的写法是es6的class写法
尤怨 2022-09-18 23:02:12

最近用vue-awesome-swiper有兼容ie需求遇到坑了,刚好对症,回来回答一下这个问题:

vue-awesome-swiper 4.x 依赖的是 swiper 5,源码用到了es6+语法,于是uglify-webpack-plugin不支持es6所以已经不能满足需求。
因此,使用现在主流的terser来替代解决这个问题。

然后ie10以上的时候可以走开头的流程了,只是到swiper这里就报语法错误了。

仔细查阅文档swiper 关于我们发现:
image.png

可以看出Swiper5不完全支持IE浏览器,得了呗,降级使用vue-awesome-swiper 3.x ,这个版本依赖的是swiper4.x。

然后再根据文档修改用到的api属性名

this.$refs.mySwiper.swiper // 语法有变化

结论:
该问题不关webpack的事,是swiper的事,降级到4.x即可

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文