问题描述:
Error: error:0308010C:digital envelope routines::unsupported at new Hash
报错原因:
我在网上搜了一下,是因为我的node版本太高了(我的是node20)因为 nodeJs V17 版本发布了 OpenSSL3.0 对算法和秘钥进行了限制,所以出现了错误。
解决办法:
网上的方法很多,可以通过降级node版本,或者更新 browserslist 数据库、设置环境变量等等方法。我这里直接教大家一个快速解决,不同降版本!!!也不用更新那些变量,真的超级简单哦😆。
在项目中package.json
的scripts
中新增以下👇代码:
SET NODE_OPTIONS=--openssl-legacy-provider
完整形式给大家看看:
"scripts": {
"start": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
"build": "vue-cli-service build",
"report": "vue-cli-service build --report"
},
搞定!!!!