我尝试过:
yarn start
我在终端中收到此错误:
纱线运行v1.22.19 警告 ....\package.json:没有许可证字段 $ 反应脚本开始 节点:内部/模块/cjs/loader:571 扔 e; ^ 错误 [ERR_PACKAGE_PATH_NOT_EXPORTED]:包子路径 './lib/tokenize' 未由 C:\Users bize\Echarts-in-React\my-app 中的“exports”定义 颂歌模块 反应脚本 ode_modules\postcss\package.json 在新的 NodeError (节点:内部/错误:399:5) 在exportsNotFound(节点:内部/模块/esm/resolve:361:10) 在 packageExportsResolve (节点:内部/模块/esm/resolve:697:9) 在resolveExports(节点:内部/模块/cjs/loader:565:36) 在 Module._findPath (节点:内部/模块/cjs/loader:634:31) 在 Module._resolveFilename (节点:内部/模块/cjs/loader:1061:27) 在 Module._load (节点:内部/模块/cjs/loader:920:27) 在 Module.require (节点:内部/模块/cjs/loader:1141:19) 在需要时(节点:内部/模块/cjs/helpers:110:18) 在对象。 (C:\Users bize\Echarts-in-React\my-app 颂歌模块 反应脚本 ode_modules\postcss-safe-parser\lib\safe-parser.js:1:17) { 代码:'ERR_PACKAGE_PATH_NOT_EXPORTED' } Node.js v18.16.0 错误 命令失败,退出代码为 1。 信息 请访问 https://yarnpkg.com/en/docs/cli/run 以获取有关此命令的文档。
这是我的 pacakge.json:
{
"name": "my-app",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/dom": ">=7.21.4",
"@testing-library/jest-dom": "^5.11.4",
"@testing-library/react": "^11.1.0",
"@testing-library/user-event": "^12.1.10",
"echarts": "^5.4.2",
"echarts-for-react": "^3.0.2",
"postcss-safe-parser": "^6.0.0",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"react-scripts": "4.0.3",
"typescript": "^5.0.4",
"web-vitals": "^1.0.1"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
我认为 postcss-safe-parser 包有问题,所以我尝试通过使用
yarn cache clean
清除纱线缓存、手动永久删除节点模块、使用 yarn install
重新安装依赖项并重新运行 yarn start
来解决问题
。这不起作用,我再次收到相同的错误消息。
谁能帮我解决这个问题吗?
我通过更新导入语句解决了这个问题(以及另一个问题),在 npm 包的文档中找到了执行此操作的提示(存在问题的依赖项)。
从此:
const uniqueId = require('uuid/v4');
const HttpsProxyAgent = require('https-proxy-agent');
对此:
const { v4: uniqueId } = require('uuid');
const { HttpsProxyAgent } = require('https-proxy-agent');
当然,这对作者来说可能是其他问题,但这也许会对将来的某人有所帮助,谁知道=)