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

React/pnpm环境下Jest遇Unexpected token错误求助

解决Jest运行时@uppy/core抛出的Unexpected token 'export'错误

这个错误是因为Jest默认不转译node_modules中的模块,但@uppy/core发布的是ES模块代码,Jest无法识别export语法导致的。按以下步骤解决:

  • 修改Jest配置
    在你的jest.config.js(或package.json的jest字段)中添加transformIgnorePatterns,指定Jest需要转译@uppy开头的包:

    module.exports = {
      // 保留你原有的其他配置
      transform: {
        '^.+\\.(js|jsx|ts|tsx)$': 'babel-jest',
      },
      transformIgnorePatterns: [
        'node_modules/(?!@uppy/)'
      ]
    };
    
  • 确保Babel配置正确
    如果项目未配置Babel,创建babel.config.js文件并添加以下配置,确保能将ES模块转译为Jest可识别的CommonJS:

    module.exports = {
      presets: [
        ['@babel/preset-env', { targets: { node: 'current' } }],
        '@babel/preset-react'
      ]
    };
    
  • 安装必要依赖
    若尚未安装相关Babel依赖,执行以下命令:

    pnpm add -D babel-jest @babel/core @babel/preset-env @babel/preset-react
    

完成以上配置后,重新运行Jest即可解决该错误。

内容的提问来源于stack exchange,提问作者GuoHao Jin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 13:15:57