【bug】vue项目启动报错:error:0308010C:digital envelope routines::unsupported(亲测有效)
报错截图:
报错原因:
node.js V17+版本中最近发布的OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响。
报错解决方案
方案一:
卸载本地的Node.js 17或以上版本,改安装Node.js 16+版本,然后再重启项目
具体步骤可参见:Vue 报错error:0308010C处理办法
给nodejs 版本降级到 16及以下版本的这个方案比较繁琐,容易出错。推荐使用方案二
方案二:
在package.json增加一段配置(亲测有效),如下:
"scripts": {
"dev_new": "set NODE_OPTIONS=\"--openssl-legacy-provider\" & npm run dev\n"
},
保存后在终端运行该指令: npm run dev_new , 运行成功,无报错了。