首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在世博会上运行时Jest无法识别.jsx文件

在世博会上运行时Jest无法识别.jsx文件
EN

Stack Overflow用户
提问于 2021-11-12 00:33:57
回答 1查看 76关注 0票数 1

我很难让jest在我的Expo程序中的.jsx文件上运行它的测试套件。

我的babel.config.js:

代码语言:javascript
运行
复制
module.exports = function (api) {
  api.cache(true);
  return {
    presets: ['babel-preset-expo'],
  };
};

我的package.json:

代码语言:javascript
运行
复制
{
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "web": "expo start --web",
    "eject": "expo eject",
    "test": "jest --watchAll --no-cache"
  },
  "jest": {
    "preset": "jest-expo",
    "transformIgnorePatterns": [
      "node_modules/(?!((jest-)?react-native|@react-native(-community)?)|expo(nent)?|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg)"
    ],
    "collectCoverage": true,
    "collectCoverageFrom": [
      "**/*.{js,jsx}",
      "!**/coverage/**",
      "!**/node_modules/**",
      "!**/babel.config.js",
      "!**/jest.setup.js"
    ]
  },
  "dependencies": {
    "@babel/preset-env": "^7.16.0",
    "@mantine/hooks": "^3.1.7",
    "axios": "^0.24.0",
    "expo": "~43.0.0",
    "expo-status-bar": "~1.1.0",
    "react": "17.0.1",
    "react-dom": "17.0.1",
    "react-native": "0.64.2",
    "react-native-material-textfield": "^0.16.1",
    "react-native-web": "0.17.1",
    "styled-components": "^5.3.3"
  },
  "devDependencies": {
    "@babel/core": "^7.16.0",
    "@testing-library/react": "^12.1.2",
    "babel-jest": "^27.3.1",
    "babel-preset-react-native": "^4.0.1",
    "jest": "^27.3.1",
    "jest-expo": "^43.0.1",
    "prettier": "2.4.1",
    "react-test-renderer": "^17.0.2"
  },
  "private": true
}

我还尝试在presets中添加@babel/preset-react,但错误消息变为以下内容:

代码语言:javascript
运行
复制
    [BABEL]: Cannot find module '@babel/core'

我没有webpack.config.js或jest.config.js。

如果任何人对如何解决这个问题有任何想法,我将不胜感激。

谢谢!

编辑:我已经将'@ Babel /preset-react‘添加到我的babel.config.js文件中了,现在我从jest收到一个错误,说'add @babel/preset-react’到你的Babel配置的'presets‘部分以启用转换。我更新的babel.config.js:

代码语言:javascript
运行
复制
module.exports = function (api) {
  api.cache(true);
  return {
    presets: ['babel-preset-expo', '@babel/preset-react'],
    plugins: ['@babel/plugin-syntax-jsx']
  };
};
EN

回答 1

Stack Overflow用户

发布于 2021-11-12 18:08:09

所以我重新安装了我的所有依赖项,它似乎工作了……不确定问题是什么,但看起来可能是我删除或破坏了依赖文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69936608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档