文章目录
- 1,npm error Class extends value undefined is not a constuctor or null
- 2,npm warn cli npm v10.8.1 does not support Node.js v16.20.2.
- 3,npm error code CERT_HAS_EXPIRED
- 学习心得
这篇文章记录下使用renren-fast-vue,安装依赖包遇到的几个问题。
1,npm error Class extends value undefined is not a constuctor or null
在执行命令时可能出现以下错误,原因未定位到,把nodejs的版本降低到v16
后该问题不再出现,注意不要用最新版本的nodejs。
这种情况下,错误的原因往往与Node.js版本有关,可能是由于Node.js的新特性与要使用的库或框架不兼容导致的。
具体来说,某些类的定义可能在新版本的Node.js中发生了变化,而旧的代码尚未更新以适应这些变化。
因为v16是一个LTS(长期支持)版本,通常能够提供更好的稳定性,而且它对大多数现代JavaScript特性提供了支持。
2,npm warn cli npm v10.8.1 does not support Node.js v16.20.2.
npm warn cli npm v10.8.1 does not support Node.js v16.20.2.
降低nodejs版本后,查看npm出现这样的警告,原因是npm和nodejs版本不匹配。
解决办法是,打开如下文件夹,找到npm相关的文件夹,直接删除。
C:\Users\Lenovo\AppData\Roaming
重新执行命令,一切正常。
3,npm error code CERT_HAS_EXPIRED
使用命令注册淘宝镜像。
npm config set registry https://registry.npm.taobao.org/
出现如下错误。
npm error code CERT_HAS_EXPIRED
npm error errno CERT_HAS_EXPIRED
npm error request to https://registry.npm.taobao.org/cnpm failed, reason: certificate has expired
原因在使用淘宝NPM镜像时,遇到了证书过期的错误。
这是因为npm尝试通过HTTPS连接到淘宝NPM镜像的服务器,但是服务器的SSL/TLS证书已经过期,不再被信任。
这通常会导致连接失败,并产生CERT_HAS_EXPIRED错误。
开发环境,不要纠结这个问题,用HTTP协议代替HTTPS协议,快速解决问题。
npm config set registry http://registry.npm.taobao.org/
学习心得
在开发过程中,不可避免地会遇到各种非核心问题,如上述的npm错误和警告。
这些问题虽然可能暂时阻碍你的进展,但它们通常不是项目的核心部分,所以不要纠结于定位到根本问题,能解决就行,这类问题通常也不具备什么技术含量,比如版本不一致导致的问题,完全不知道花时间研究。
处理这类问题的关键是找到快速有效的解决方法,以便尽快回到项目的主要任务上。
在遇到难题时,不要害怕寻求帮助或查阅官方文档和社区论坛,那里往往有丰富的资源可以帮助你找到解决方案。