Angular 版本截图
$ ng serve
\ Generating browser application bundles (phase: building)...node:internal/crypto/hash:69
this[kHandle] = new _Hash(algorithm, xofLen);
^
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:69:19)
at Object.createHash (node:crypto:138:10)
at BulkUpdateDecorator.hashFactory (Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\util\createHash.js:145:18)
at BulkUpdateDecorator.update (Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\util\createHash.js:46:50)
at RawSource.updateHash (Z:\WebDev\Internship\DocMgt\node_modules\webpack\node_modules\webpack-sources\lib\RawSource.js:77:8)
at NormalModule._initBuildHash (Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\NormalModule.js:880:17)
at handleParseResult (Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\NormalModule.js:946:10)
at Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\NormalModule.js:1040:4
at processResult (Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\NormalModule.js:755:11)
at Z:\WebDev\Internship\DocMgt\node_modules\webpack\lib\NormalModule.js:819:5
at Z:\WebDev\Internship\DocMgt\node_modules\loader-runner\lib\LoaderRunner.js:407:3
at iterateNormalLoaders (Z:\WebDev\Internship\DocMgt\node_modules\loader-runner\lib\LoaderRunner.js:233:10)
at iterateNormalLoaders (Z:\WebDev\Internship\DocMgt\node_modules\loader-runner\lib\LoaderRunner.js:240:10)
at Z:\WebDev\Internship\DocMgt\node_modules\loader-runner\lib\LoaderRunner.js:255:3
at context.callback (Z:\WebDev\Internship\DocMgt\node_modules\loader-runner\lib\LoaderRunner.js:124:13)
at Object.loader (Z:\WebDev\Internship\DocMgt\node_modules\postcss-loader\dist\index.js:195:3) {
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
Node.js v20.6.1 此错误似乎与丢失或错误引用的模块有关,但我正在努力找出确切的原因。我已经仔细检查了我的导入语句,它们似乎是正确的。有问题的“模块名称”是我的项目依赖项的一部分,并且我已确认它已安装。
我已经尝试了以下故障排除步骤,但没有成功:
清除 Angular CLI 和 npm 缓存。 使用 npm install 重新安装我的项目的依赖项。 确保模块名称拼写正确并与导入语句匹配。 验证该模块是否列在我的项目的 package.json 文件中。 我的项目之前运行得很好,最近我没有对代码进行任何重大更改。我的项目配置可能存在问题,或者我忽略了其他一些微妙的错误。
我正在使用 Angular 版本 X.X.X 和 Angular CLI 版本 X.X.X。如果有人遇到类似的错误或对如何解决它有任何见解,我将非常感谢您的帮助。预先感谢您的帮助!
您的错误快照已经表明 Node 版本不受支持,这是真的。
如果您必须使用 Angular 版本 12.x,那么您应该使用 Node 14.x,而不是更高版本。
对于最新的 Angular 版本 16.x,您应该可以在 Node 16.x/18.x 上正常运行
这是兼容性图表: