我创建了默认的IntelliJ IDEA React项目,并得到了这个:

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:67:19)
    at Object.createHash (node:crypto:130:10)
    at module.exports (/Users/user/Programming Documents/WebServer/untitled/node_modules/webpack/lib/util/createHash.js:135:53)
    at NormalModule._initBuildHash (/Users/user/Programming Documents/WebServer/untitled/node_modules/webpack/lib/NormalModule.js:417:16)
    at handleParseError (/Users/user/Programming Documents/WebServer/untitled/node_modules/webpack/lib/NormalModule.js:471:10)
    at /Users/user/Programming Documents/WebServer/untitled/node_modules/webpack/lib/NormalModule.js:503:5
    at /Users/user/Programming Documents/WebServer/untitled/node_modules/webpack/lib/NormalModule.js:358:12
    at /Users/user/Programming Documents/WebServer/untitled/node_modules/loader-runner/lib/LoaderRunner.js:373:3
    at iterateNormalLoaders (/Users/user/Programming Documents/WebServer/untitled/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
    at iterateNormalLoaders (/Users/user/Programming Documents/WebServer/untitled/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
/Users/user/Programming Documents/WebServer/untitled/node_modules/react-scripts/scripts/start.js:19
  throw err;
  ^

这似乎是最近才出现的问题——webpack在4天前遇到了这个问题,目前仍在处理。


当前回答

在你的包裹里。Json:更改这一行

"start": "react-scripts start"

to

"start": "react-scripts --openssl-legacy-provider start"

其他回答

临时解决方案如下。实际的解决方案是升级到Webpack 5。

2022年12月更新

这对我来说很管用(降级到Node.js 16):

nvm install 16 --lts
nvm use 16

使用Node.js版本管理器(Windows)。

与节点v18.0.0版本相同的错误 和nuxt框架版本2.15时运行的开发服务器,将修复:

"scripts": {
  "dev": "NODE_OPTIONS=--openssl-legacy-provider nuxt"
}

在角。io项目,node .js的接受(不支持)版本是v16.x.x。

在Nodes v17中。X版本,同样的错误发生在这个问题中描述。

解决方案:

卸载节点,重新安装v16版本。x (Windows)。

对于Angular应用:

你也可以在package.json中编辑npm启动脚本。而不是

"start": "ng serve -o"

to

"start": "set NODE_OPTIONS=--openssl-legacy-provider && ng serve -o"

当你在终端/命令行中运行npm run start时,它会首先设置NODE_OPTIONS来避免这个问题。

这个解决方案对我很有效。

这个错误出现在Node.js版本17+,所以尝试降级Node.js版本。

从计算机上卸载Node.js。 从https://nodejs.org/download/release/v16.13.0/下载Node.js版本16并重新安装

这是所有。