Vue项目在安装依赖时报错:this[kHandle] = new _Hash(algorithm, xofLen)

原因:
这个错误通常是由于Node.js版本更新导致的。新版本的Node.js包含了OpenSSL 3.0,它对加密算法和密钥大小有更严格的限制,可能会影响一些旧项目。

解决方案:

  1. 临时解决(需要每次启动时设置):

    • 在VS Code终端中:
      $env:NODE_OPTIONS="--openssl-legacy-provider"
    • 在Windows CMD中:
      SET NODE_OPTIONS=--openssl-legacy-provider
  2. 永久解决(修改package.json中的scripts):

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

这些解决方案通过设置NODE_OPTIONS环境变量,使用旧版的OpenSSL提供程序,从而解决了兼容性问题。

建议:
虽然这些方法可以解决问题,但长期来看,更新项目依赖和代码以适应新版Node.js可能是更好的解决方案。这可以确保项目使用最新的安全更新和功能。


__EOF__

本文作者龙陌
本文链接https://www.cnblogs.com/longmo666/p/18517353.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   龙陌  阅读(301)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示