![](/img/trans.png)
[英]Babel dependency not resolved in react app created using “create-react-app” utility
[英]The react-scripts package provided by Create React App requires a dependency : Babel-Jest
我在運行react-script test
時發現了這個錯誤消息
The react-scripts package provided by Create React App requires a dependency
"babel-jest": "^24.9.0"`
因此錯誤消息還建議我們刪除 package-lock.json 以及我嘗試過的 node_modules 但我有相同的錯誤消息。
我檢查了 package-lock.json ,例如 jest-config (是一個子依賴項)使用比 react-script 接受更高的版本。
請如果您有一些建議
packages.json
{
"name": "creator-web-app",
"version": "0.1.0",
"private": true,
"main": "public/electron.js",
"homepage": "./",
"dependencies": {
"@craco/craco": "^5.6.4",
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^7.2.1",
"@types/react": "^16.9.34",
"await-to-js": "^2.1.1",
"axios": "^0.19.2",
"classnames": "^2.2.6",
"electron-is-dev": "^1.2.0",
"env-cmd": "^10.1.0",
"enzyme": "^3.11.0",
"history": "^4.10.1",
"i18next": "^19.4.2",
"i18next-browser-languagedetector": "^4.0.2",
"jest": "^25.3.0",
"jwt-decode": "^2.2.0",
"moment": "^2.24.0",
"nano-id": "^1.1.0",
"npm-watch": "^0.6.0",
"react": "^16.13.1",
"react-cookies": "^0.1.1",
"react-dom": "^16.13.1",
"react-i18next": "^11.3.4",
"react-inlinesvg": "^1.2.0",
"react-redux": "^7.2.0",
"react-router-dom": "5.1.2",
"react-scripts": "3.4.1",
"redux": "^4.0.5",
"redux-form": "^8.3.3",
"redux-thunk": "^2.3.0",
"typescript": "^3.7.0"
},
"scripts": {
"electron": "NODE_ENV=production npm run build && NODE_ENV=production electron .",
"start": "NODE_ENV=development react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject",
"pack": "NODE_ENV=production && npm run build && electron-builder --dir",
"dist": "NODE_ENV=production && npm run build electron-builder"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"@types/classnames": "^2.2.10",
"@types/enzyme": "^3.10.5",
"@types/jest": "^25.2.1",
"@types/react-redux": "^7.1.7",
"@types/react-router-dom": "^5.1.4",
"@types/redux-form": "^8.2.3",
"craco-alias": "^2.1.1",
"electron": "^8.2.1",
"electron-builder": "^22.4.1",
"enzyme-adapter-react-16": "^1.15.2",
"node-sass": "^4.13.1",
"react-test-renderer": "^15.6.2",
"ts-jest": "^25.4.0",
"whatwg-fetch": "^3.0.0"
},
"build": {
"appId": "studioapp.id",
"mac": {
"category": "your.app.category.type"
},
"files": [
"**/*"
],
"directories": {
"buildResources": "."
},
"protocols": {
"name": "studioapp-protocol",
"schemes": [
"studioapp"
]
}
},
"jest": {
"collectCoverageFrom": [
"<rootDir>/src/**/*.{ts,tsx}"
],
"moduleNameMapper": {
"\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga|yml)$": "<rootDir>/tests/test-file-mock.js",
"\\.(css|less|scss|sss|styl)$": "<rootDir>/tests/test-mock.js",
"@/(.*)$": "<rootDir>/src/$1"
},
"transform": {
"^.+\\.(tsx|ts)?$": "ts-jest"
}
}
}
謝謝
我在create-react-app
上遇到了同樣的問題。 這是我所做的
Go 到路徑
C:\Users\YOURNAME\node_modules
然后刪除那些顯示錯誤的包。
更多信息在這里: https://github.com/creativetimofficial/argon-dashboard-react/issues/28
具有諷刺意味的是,我今天早上正在研究一個類似的問題。 您能否提供您的 package.json 的屏幕截圖和錯誤消息?
Babel-Jest 用於將 javascript 代碼編譯成 jest 可以使用的格式。 我懷疑您的問題是您有一個依賴項,即鎖定文件隨后鎖定在不正確的 babel-jest 版本中。
我可以從上面的響應中添加更多細節來解決這個問題,我發現了問題。
當我們使用 react-scripts 時,我們不能有 jest 包,或者某些東西已經由 create-react-app 管理
我遇到的問題是 package.json 包含比 react-script 可以接受的更高版本的笑話
當我在 package.json 中刪除這一行時,似乎已經可以工作了
您的依賴項之一是使用更新版本的babel-jest
。 您可以通過在項目根目錄中運行npm ls babel-jest
來找到它們。
解決問題的一個簡單方法是嘗試鏈接到這些包的舊版本,例如"@types/jest": "^24.0.0"
以便他們不使用新版本的babel-jest
.
對於 mac 用戶刪除
/Users/{UserName}/node_modules
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.