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
相关产品推荐
相关产品推荐

