Vue如何处理 Node 报错 Error: error:0308010c:digital envelope routines::unsupported

问题原因:出现这个问题一般都是node版本升级之后出现的

PS: 我看很多回答改环境变量等等,首先我认为改NODE_OPTIONS = --openssl-legacy-provider一点用没有,不是长久的办法

第一种解决方案

切换node版本

退回版本node14或16,如果没有nvm的强烈建议先安装nvm
有nvm的直接可以nvm use 14 切换node的版本
nvm的下载与安装
不想安装的话那就删除node,重新下载14版本的就可以了

第二种解决方案

更新vue脚手架版本

举个例子,以我本地项目为例
在这里插入图片描述
把脚手架相关版本更新到5.0.8后执行yarn install 安装即可

原因:主要是nodeJs V17版本发布了OpenSSL3.0对算法和秘钥大小增加了更为严格的限制,nodeJs v17之前版本没影响,但V17和之后版本会出现这个错误,使用新版本的vue-cli中对应的webpack版本已经对应修复好此问题

思路来源:

链接文章通过源码刨析原因,有时间的可以看看造成这个问题的原因
node版本问题-- 摘自儒雅的烤地瓜

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值