vue-cli创建项目运行报错this[kHandle] = new _Hash(algorithm, xofLen);(完美解决)

1:问题出现的原因
出现这个问题是node.js 的版本问题,因为 node.js V17开始版本中发布的是OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响。故此以前的项目在使用 nodejs V17以上版本后会报错。而github项目很多都是之前版本的npm,所以运行时候会出现这个问题。

解决办法一(推荐)

在项目中打开package.json文件夹,在serve或者dev处前面加上

set NODE_OPTIONS=--openssl-legacy-provider

一定要在前面,也就是要写成:

set NODE_OPTIONS=--openssl-legacy-provider  && vue-cli-service serve

而不是在后面加。再次运行即可解决。

解决办法二(不太推荐)

第二个方法则是改node的版本,从根处解决,不过可能你现在写的代码在之前的node版本不兼容了。大多数运行其他的代码就是为了实现对应的效果,能跑通运行即可,然后把那个代码实现的功能加到自己的项目上即可,所以不太推荐降低node的版本,但这里还是记录一下,既然是node.js V17开始版本中发布的是OpenSSL3.0,那么使用v16版本的就ok了。
在下面网站下载对应的node。
https://nodejs.org/download/release/v16.19.0/
下载对应版本即可

 

最近更新

  1. TCP协议是安全的吗?

    2023-12-08 15:36:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-08 15:36:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-08 15:36:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-08 15:36:05       20 阅读

热门阅读

  1. RPC 集群,gRPC 广播和组播

    2023-12-08 15:36:05       36 阅读
  2. js 如何判断一个数组内的值都为true

    2023-12-08 15:36:05       45 阅读
  3. uniapp 显示文件流图片

    2023-12-08 15:36:05       41 阅读
  4. 学习redis(待完善)

    2023-12-08 15:36:05       33 阅读
  5. 基于MATLAB车辆防碰撞系统仿真

    2023-12-08 15:36:05       32 阅读
  6. 【力扣100】4.移动零

    2023-12-08 15:36:05       40 阅读
  7. ChatGPT的进化史

    2023-12-08 15:36:05       39 阅读
  8. openmmlab加载自训练权重

    2023-12-08 15:36:05       41 阅读
  9. 利用 Python 进行数据分析实验(六)

    2023-12-08 15:36:05       34 阅读
  10. vs2022专业版永久密钥

    2023-12-08 15:36:05       45 阅读