升级node导致vue项目启动报错

引言

最近在升级nodejs版本到v18.7.0后启动项目报digital envelope routines::unsupported,经过多方查找最终找到解决方法,特写下此篇

原因

node.js的版本问题

因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响。故此以前的项目在升级 nodejs 版本后会报错

解决方法

方法一:

export NODE_OPTIONS=--openssl-legacy-provider

方法二:
修改package.json,在相关构建命令之前加入set NODE_OPTIONS=–openssl-legacy-provider

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

你可能感兴趣的:(前端,vue.js,javascript,前端)