问题
Error: error: 0308010c: digital envelope routines: unsupported
今天,由于学校要求使用前后端分离开发项目,朋友决定基于若依后台管理系统构建 Vue 部分代码,将项目从github上拉取下来后安装依赖后运行就出现了这个问题
记录
- 刚开始我们还以为是由于 npm 镜像的种种弊端,于是更改镜像仓库,设置代理等都进行了尝试,但是都无功而返,后来,我在自己的电脑上进行了尝试,却无法复现
- 到此,就开始联想到应该是 node 版本的问题,我朋友电脑上是18.xx.x的版本,我将版本切换到18也同样出现了bug,同时查询变更日志也得到了应证
node 版本变更更日志
2022-06-01, Version 17.9.1 (Current), @ruyadorno
解决方案
方案1
修改 package.json 文件原dev 配置: "dev": "set NODE_OPTIONS=\"--openssl-legacy-provider\" & npm run dev\n" ,
方案2
卸载现 node ,安装较低版本如14、16的 node 版本
(本人不推荐,原因:node 版本问题存在较广泛,也许现在解决了,换一个项目又会出现这个问题)
方案3
使用 nvm 管理 node 版本
关于 nvm 的使用小生会出一期使用教程
下面贴上小生网址,欢迎访问MUZL