gpt4 book ai didi

javascript - Jest 和 Create-react-app : Cannot use import statement outside a module

转载 作者:行者123 更新时间:2023-12-05 08:04:41 24 4
gpt4 key购买 nike

我有一个 React Native 应用程序,其中一些文件包含一些调用特定端点的方法。当我尝试运行 Jest 时,在导入的本地文件中向我抛出错误。 enter image description here

我有下一个 package.json:

{
"name": "appName",
"version": "1.0.0",
"description": "some description",
"main": "index.js",
"scripts": {
"test": "jest"
},
"author": "",
"license": "ISC",
"dependencies": {},
"devDependencies": {
"@babel/core": "^7.14.2",
"@react-native-community/async-storage": "^1.12.1",
"@react-native-community/netinfo": "^6.0.0",
"isomorphic-fetch": "^3.0.0",
"jest": "^26.6.3",
"jest-fetch-mock": "^3.0.3"
},
"jest": {
"automock": false,
"setupFiles": [
"./jest.setup.js"
]
}
}

jest.setup.js 文件如下:

import mockRNCNetInfo from '@react-native-community/netinfo/jest/netinfo-mock.js'

jest.mock('@react-native-community/netinfo', () => mockRNCNetInfo)

目前,此内容已被注释,否则会抛出与图片相同的错误。

我试图在另一个项目中测试相同的东西,其中这个 @react-native-community/netinfo 包没有保存在 devDependencies 中,而是保存在 dependencies 中 它有效,但我不确定这是否是问题所在。在这个特定的项目中,我不能让这个package作为一个dependency,它应该在devDependencies中。

我在这方面发现了很多问题,但没有一个能解决这个问题,我不知道该怎么办了。感谢您的宝贵时间!

最佳答案

我在互联网上找到了这个答案,它对我有一些小的附加组件,但我会把它贴在这里,也许将来会对某人有所帮助:

  1. 安装babel-jestbabel-preset-env@babel/runtimereact(最后一个可能只有在其他包需要时才有必要)
  2. 根目录中创建.babelrc文件并添加:
  {
"env": {
"test": {
"plugins": ["transform-es2015-modules-commonjs"]
}
}
}
  1. 运行您的代码,一切顺利

关于javascript - Jest 和 Create-react-app : Cannot use import statement outside a module,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67569418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com