React Native集成Jest遇SyntaxError:第三方库export语法报错
解决React Native Jest第三方库SyntaxError问题
问题原因
Jest默认不转译node_modules目录下的代码,但部分第三方库(如react-native-radio-buttons-group、react-native-bouncy-checkbox)发布的是未转译的ES模块代码,导致Jest无法识别export语法,抛出SyntaxError。
解决方案
1. 修改Jest配置,指定需要转译的第三方库
更新你的jest.config.js,添加transformIgnorePatterns配置,将目标库加入白名单,让Jest对其进行转译:
module.exports = { preset: 'react-native', setupFilesAfterEnv: ['<rootDir>/jest.setup.ts'], moduleDirectories: ['node_modules', 'src'], // 添加转译白名单配置 transformIgnorePatterns: [ 'node_modules/(?!(react-native-radio-buttons-group|react-native-bouncy-checkbox)/)' ] };
后续若有其他同类库报错,直接在括号内用|分隔追加即可。
2. 清除Jest缓存
执行命令清除旧编译缓存,避免缓存干扰:
npx jest --clearCache
3. 验证配置
重新运行Jest测试,Unexpected token 'export'错误应不再出现。
内容的提问来源于stack exchange,提问作者Spartan5996
相关产品推荐
相关产品推荐

