ReactJs升级Swiper至10.2.0后出现TypeError: mod is not a function错误
解决React中Swiper 10.2.0升级后的
TypeError: mod is not a function错误 修正导入方式:Swiper 10重构了导入结构,旧版本的默认导入逻辑已失效。把之前的默认导入改成命名导入,同时确保样式导入路径正确:
import { Swiper, SwiperSlide } from 'swiper/react'; import 'swiper/css';不要再用
import Swiper from 'swiper'这类写法,会因模块导出不匹配触发错误。清理依赖缓存重装:旧版本的依赖缓存可能和新版本冲突,执行以下命令彻底清理后重装:
rm -rf node_modules package-lock.json npm install用yarn的话替换为:
rm -rf node_modules yarn.lock yarn install适配自定义插件/扩展:如果项目里用了自定义Swiper插件或第三方扩展,这些代码大概率依赖旧版本API。要对应调整成Swiper 10的新API规范,比如插件注册方式,确保导出的是合法函数格式。
确认React版本兼容性:Swiper 10对React版本有要求,至少需要React 16.8+,建议升级到18.x版本,避免版本不兼容引发的异常。
调整全局初始化代码:如果存在直接调用
Swiper()构造函数的全局代码,Swiper 10里这个构造函数的导出方式已变更,要改成:import { Swiper as SwiperCore } from 'swiper'; new SwiperCore('.swiper-container', { /* 你的配置项 */ });
内容的提问来源于stack exchange,提问作者Alireza Bagheri
相关产品推荐
相关产品推荐

