Vue报错:Error: error:0308010C:digital envelope routines::unsupported
执行npm run dev报错,原因: node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制
解决办法:
1.手动执行命令
使用win+R,输入cmd,在终端中输入如下命令:
set NODE_OPTIONS=--openssl-legacy-provider
从其他文章找到的办法,但是本人实测不行,原因未知,大概是电脑差异
2.修改package.json
原理和上一个方法差不多,在项目目录中找到package.json,修改script属性,加入如下属性,属性名自定义
"serve": "set NODE_OPTIONS=\"--openssl-legacy-provider\" & npm run dev\n"
修改后如下:
萌新注意本命令的“&”后一段为自己项目的启动命令
本人实测通过,当然一劳永逸的办法还是降低自己nodejs的版本。
各位大佬有更好的办法的话,欢迎评论区讨论