nodejs版本升级到18后,无法启动和打包vue2项目

引言

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

原因

node.js的版本问题

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

解决方案

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

只要在原来package.json里命令前添加 SET NODE_OPTIONS=--openssl-legacy-provider 就好了

posted @ 2022-11-29 15:03  snail-2018  阅读(3925)  评论(0)    收藏  举报