You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

测试SwiperJS组件时Jest抛出Unexpected token 'export'错误求助

解决Jest测试SwiperJS组件时"Unexpected token 'export'"报错

问题原因

Jest默认忽略node_modules目录下文件的转译,但Swiper及部分关联依赖发布的是ES模块格式代码,Jest无法直接解析这类语法,因此抛出意外令牌错误。

解决方案

  • 配置Jest转译Swiper相关包
    在Jest配置文件(如jest.config.js,或package.json的jest字段)中添加transformIgnorePatterns,指定让Jest对Swiper及其依赖进行转译:

    module.exports = {
      // 其他Jest配置项...
      transformIgnorePatterns: [
        '/node_modules/(?!swiper|ssr-window|dom7)/'
      ]
    };
    
  • 确保Babel配置支持ES模块
    检查项目的Babel配置文件(babel.config.js或.babelrc),确认包含必要的预设:

    module.exports = {
      presets: [
        '@babel/preset-env',
        '@babel/preset-react'
      ]
    };
    
  • 处理CSS导入报错(可选)
    如果测试中出现CSS导入相关错误,可在Jest配置里添加moduleNameMapper来mock CSS文件:

    module.exports = {
      // 其他配置项...
      moduleNameMapper: {
        '\\.(css|less|scss|sass)$': 'identity-obj-proxy'
      }
    };
    

    执行以下命令安装依赖:

    npm install identity-obj-proxy --save-dev
    

验证修改

重新运行测试用例:

npm test

内容的提问来源于stack exchange,提问作者Rustam Rustamov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 11:45:37