出现这个错误是因为 Node.js 从V17版本开始更新了OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制。

只需要在终端输入

export NODE_OPTIONS=--openssl-legacy-provider

即可。

当然,这样也有缺点,每次运行都必须声明一次。我们可以修改package.json,在相关构建命令之前就加入

"scripts": {
"dev": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
"build:prod": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",
},