我试图为一个react本机库设置一个玩笑,但是我得到了下面的错误
SyntaxError: react-native/Libraries/polyfills/error-guard.js: Missing semicolon. (14:4)
12 | let _inGuard = 0;
13 |
> 14 | type ErrorHandler = (error: mixed, isFatal: boolean) => void;
| ^
15 | type Fn<Args, Return> = (...Args) => Return;
react原生版本:0.61.5
app.js
import { Dimensions } from 'react-native';
function sum(a, b) {
return a + b;
}
module.exports = sum;
app.test.js
const sum = require('./app');
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
jest.config.js
module.exports ={
preset : 'react-native',
transformIgnorePatterns: [
'/node_modules/(?!(@react-native|react-native)/).*/'
]
}
.babelrc
{
"presets": ["react-native"]
}
我尝试了各种建议的解决方案,比如添加transformIgnorePatterns,但都没有效果。有人能帮我吗?
发布于 2021-11-25 07:14:00
在我将.babelrc
文件更改为babel.config.js
后,它对我起了作用。
发布于 2022-05-30 08:52:08
在我将.babelrc
文件更改为babel.config.js
后,它也对我有效。
module.exports = {
presets: ['module:metro-react-native-babel-preset'],
};
package.json
"react": "17.0.2",
"react-native": "0.67.4",
[...]
"@babel/core": "7.18.0",
发布于 2022-05-22 01:12:40
经过长期的斗争,我终于可以解决这个问题了:
正如丹尼尔在上面的回答中所说的,我们需要将.babelrc文件更改为babel.config.js。此外,我们还必须遵循以下步骤:
presets: ['module:metro-react-native-babel-preset']
。"@testing-library/jest-native": "^4.0.5"
和babel.config.jshttps://stackoverflow.com/questions/70080213
复制相似问题