我最近从 GitHub 下载了一个旧的 Angular 8 项目并尝试在本地运行它。运行 npm install 安装所需的依赖项后,我尝试使用 ngserve 启动项目。但是,我遇到了以下错误消息:
C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient>ng serve
10% building 3/3 modules 0 activei 「wds」: Project is running at http://localhost:4200/webpack-dev-server/
i 「wds」: webpack output is served from /
i 「wds」: 404s will fallback to //index.html
10% building 3/4 modules 1 active ...pack-dev-server\client\index.js?http://0.0.0.0:0/sockjs-node&sockPath=/sockjs-nodenode: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:133:10)
at module.exports (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\util\createHash.js:135:53)
at NormalModule._initBuildHash (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\NormalModule.js:412:16)
at C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\NormalModule.js:444:10
at C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\NormalModule.js:320:13
at C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\loader-runner\lib\LoaderRunner.js:367:11
at C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\loader-runner\lib\LoaderRunner.js:203:19
at VirtualFileSystemDecorator.readFile (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\@ngtools\webpack\src\virtual_file_system_decorator.js:46:13)
at processResource (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\loader-runner\lib\LoaderRunner.js:202:11)
at iteratePitchingLoaders (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\loader-runner\lib\LoaderRunner.js:158:10)
at runLoaders (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\loader-runner\lib\LoaderRunner.js:365:2)
at NormalModule.doBuild (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\NormalModule.js:292:3)
at NormalModule.build (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\NormalModule.js:438:15)
at Compilation.buildModule (C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\Compilation.js:702:10)
at C:\Users\Fozle Rabbi\Desktop\Folder GIt\AngularFuelSensor\FuelSensorClient\node_modules\webpack\lib\Compilation.js:944:14 {
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
Node.js v18.20.3
它似乎与 Node.js 中的密码学库有关(ERR_OSSL_EVP_UNSUPPORTED)。我目前使用的是 Node.js v18.20.3。我怀疑该项目与此版本的 Node.js 不兼容,因为它是使用 Angular 8 构建的,而 Angular 8 可能使用旧版本的 Webpack 或其他库。
我采取的步骤:
我的问题:
如有任何指导,我们将不胜感激!