如何将基于 Node v16 构建的 React 应用程序更新到 Node v18?

问题描述 投票:0回答:1

我有一个使用 React v17 的项目,是使用 Node v16 创建的,现在我想更新它并将其转移到 Node v18,那么如何在不更改依赖项或其他内容的情况下以尽可能快速的方式完成此操作?

我尝试在节点 18 中安装依赖项,这些依赖项安装得很好,但当我运行命令来启动服务器时,我遇到了此错误。

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

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at C:\Users\SystemUser\Downloads\Project\Project\node_modules\loader-runner\lib\LoaderRunner.js:367:11      
    at C:\Users\SystemUser\Downloads\Project\Project\node_modules\loader-runner\lib\LoaderRunner.js:233:18      
    at context.callback (C:\Users\SystemUser\Downloads\Project\Project\node_modules\loader-runner\lib\LoaderRunner.js:111:13)
    at C:\Users\SystemUser\Downloads\Project\Project\node_modules\babel-loader\lib\index.js:59:103 {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

Node.js v18.16.1```
javascript node.js reactjs npm node-modules
1个回答
0
投票

假设您使用

react-scripts
v4 创建应用程序,请尝试将软件包升级到第 5 版。查看 https://github.com/facebook/create-react-app/releases/tag/v5.0.0 了解更多详细信息。

© www.soinside.com 2019 - 2024. All rights reserved.