vue 运行报错 error:0308010C:digital envelope routines::unsupported

问题描述:公司项目有的是vue2,有的是vue3,应该是某次在做vue3项目时升级了node版本,导致vue2的项目都启动不了,引发了一系列的问题,记录一下解决过程。

  1. 首先是npm run dev 报错 error:0308010C:digital envelope routines::unsupported


    a.png

    解放方法:
    在package.json文件中增加配置 set NODE_OPTIONS=--openssl-legacy-provider ,如图:


    b.png
  2. dev环境运行解决了,但是打包又报错 TypeError: Class extends value undefined is not a constructor or null
    网上搜的常用解决方案:

1) npm install --save-dev mini-css-extract-plugin
2) npm install webpack -g // 全局安装
npm install webpack --save-dev //在项目开发依赖中安装

3)删除项目中package-lock.json 文件 ,然后再重新yarn install 或者 npm install 一下
删除后依赖安装报错

3、我试了第一种没成功,尝试第三种,但是安装依赖时又出现错误:
Fix the upstream dependency conflict, or retry this command with --force or --legacy-peer-deps to accept an incorrect (and potentially broken) dependency resolution
来一个问题咱解决一个,使用以下命令搞定:

npm set legacy-peer-deps=true  

4、重新npm install 成功,但是build继续报之前的错 TypeError: Class extends value undefined is not a constructor or null
重新使用方案1终于搞定,具体原因不知

npm install --save-dev mini-css-extract-plugin
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。