Jest 配置是:
module.exports = {
transformIgnorePatterns: ['<rootDir>/node_modules/(?!(@react-native|react-native)/)'],
preset: 'react-native',
transform: {
'^.+\\.js$': require.resolve('react-native/jest/preprocessor.js'),
},
};
在 babel 配置中有 presets: ['module:metro-react-native-babel-preset'],
我有包裹
"jest": "^24.9.0",
"react": "^16.14.0",
"react-native": "^0.64.0",
React 和 React-native 的版本因为有你电视而严格
如果我运行 jest 我得到一个错误:
SyntaxError: Unexpected identifier
node_modules/@react-native/polyfills/error-guard.js:14
type ErrorHandler = (error: mixed, isFatal: boolean) => void;
此外,如果我在配置中使用 ts-jest,我的 *.test.tsx 中也会出现这样的错误
SyntaxError: Unexpected token '<'
请各位指教
答案 0 :(得分:1)
对我来说,问题是我在 package.json 的 jest 配置的“transformIgnorePatterns”中使用了多个字符串。