一个vue项目npm install失败的问题解决方案

vue的项目一直是史上最难的最烦的问题,今天给别人做毕设单子想在gitee上拉项目二开的时候,由于很久没写过vue项目已经生疏了,在拿到项目之后我还是例行完成最常见的步骤:

1、npm init -y 初始化

2、npm install 用npm把这个项目的依赖包都下载了

结果就出现了npm install一直在那转就是没任何变化的现象:

1、找到问题所在

为了解决这个问题,首先我们得知道是为什么导致的,那就得输出一些日志,不然连解决的问题是啥都不知道

首先【Ctrl + C】杀掉当前运行的程序

然后输入这个命令来在安装的时候输出日志:【npm install --verbose】

然后将这个日志拿去问AI是为啥:

那么我这里AI给出的结论是我的npm下载配置文件里的【镜像源路径】(++https://registry.npm.taobao.org/++) 已经过期,也就是npm根据我这个配置文件在一直找一个不存在的路径,所以没法下载

2、针对问题解决

1)更换有效最新的npm下载镜像源

那么通用的办法就是上网搜最新的npm镜像源下载地址,比如我搜到的目前2025年最新的地址是:

复制代码
淘宝:https://registry.npmmirror.com/ 
腾讯云:https://mirrors.cloud.tencent.com/npm/ 
CNPM:https://r.cnpmjs.org/

对应执行的更换配置的命令是:

复制代码
npm config set registry [镜像源地址]

比如:
-淘宝:npm config set registry https://registry.npmmirror.com/ 
-腾讯云:npm config set registry https://mirrors.cloud.tencent.com/npm/ 
-CNPM:npm config set registry https://r.cnpmjs.org/

2)检查更换成功没有

然后检查你当前的npm配置文件的路径更换成功没有:【npm get registry】

但是这里又有问题的了,我上面的那个更换npm镜像的方法是针对 "我这个电脑的全局的npm配置文件",也就是检查整个电脑配置的全局的环境变量里npm的配置文件:【.npmrc】的配置

什么意思呢?就是我们自己的之前搭建vue项目的时候配置了一个全局的配置文件,我们自己写vue文件是基于这个电脑的整个环境下来搭建的,那自然用的就是这个配置文件,你可以去你的电脑:【C:\Users\你的用户名\.npmrc】这个路径来找到这个配置文件

或者用【Win + R】cmd打开终端,再输入【npm get registry】也会发现其实我们的配置没有问题

那么我们需要到自己的项目里打开终端来检查,当我们回到项目里,要在你这个项目的【根目录】打开终端,输入【npm get registry】,就可能会发现你刚刚的配置并没有成功

3)项目里还有一个【.npmrc】配置文件,也要改

经过检查之后才发现,原来这个项目里还有一个【.npmrc】文件,这个文件覆盖了全局的npm的那个配置文件,所以我们刚刚改的只是我们电脑里全局的那个配置文件,而不是这个项目里的局部配置文件,我们只需要把它也改了就行

4)如果是用nvm管理node.js的,还要检查nvm那里的setting文件

前面的情况是单独直接安装一个node.js的用户的情况,那么还有的人是用nvm管理node的,那么要到nvm的安装路径下,找到setting文件,检查这里的镜像路径

5)最后还要删除【package-lock.json】文件

这个文件会规定死每个依赖包的安装来源的路径,即便你所有的配置文件都配置了最正确的镜像源,这个文件还会误导npm去到各个错误的路径区下载依赖包

直接删掉,然后执行一下【npm cache clean --force】清除一下npm前面下载留下的一些错误缓存

然后再执行【npm install】,就大功告成了,也会生成新的【package-lock.json】文件

相关推荐
_瑞1 小时前
深入理解 iOS 渲染原理
前端·ios
IT_陈寒1 小时前
SpringBoot自动配置失灵?你可能忘了这个关键注解
前端·人工智能·后端
碎碎念_4921 小时前
SpringBoot + Vue 前后端分离从 0 到 1 完整环境配置流程
vue.js·spring boot·后端
iCOD3R1 小时前
Skill - kill-ai-slop 解决“AI 味”样式
前端·css·ai编程
shuaijie05182 小时前
强制修改调用接口的api地址。
javascript·vue.js·ecmascript
皮音2 小时前
Skill 在项目中的实践 —— 从 Agent 困境到 Skill 工程化
前端
大龄秃头程序员2 小时前
RN 0.86 新架构实战:TurboModule + Fabric 组件 + iOS 原生容器,完整代码开源
前端·react native
这是个栗子2 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
Hilaku2 小时前
Vue 和 React 真正的差距,不在语法,而在团队犯错成本
前端·javascript·程序员
研☆香2 小时前
为什么变量声明在赋值前也能使用?—— 深入理解 JavaScript 变量提升与作用域
开发语言·前端·javascript