前言
结果:
已解决
感想:
我怎么那么恨呢..........真是作孽啊..........
过程
一、什么情况下失败
vue3.0+vue-cli4.5,想写一个仿淘宝app的项目来练手,刚创建完项目下axios的时候就失败了,终端上浮现了经典的npm audit fix,npm audit fix --force,npm audit三连,可谓出师未捷身先死。
二、寻找原因
1、第一次的时候跟着命令在走,但在npm audit fix --force的时候出现了问题,并没有下载成功,我以为是npm速度太慢没下载下来,于是用cnpm又走了一遍,但这个时候开始错乱了,这里学到了一个之前没有接触过的东西:nrm
下载nrm
查看仓库
仓库情况
根据需要来选择
【这里其实属实没有想明白。。。不就是嫌npm太慢经常卡的下不来东西才又下的cnpm吗,这里咋又给用回去了呢呜呜呜】
然后博主说再次执行npm audit fix就可以成功了,但我还是失败。
2、简单粗暴式,直接删除node_modules,清除缓存,再重新下载,但我没成功,还是失败。
3、或许是下载命令有问题呢?依次试着输下了以下命令
- npm i axios --save
- npm i axios vue-axios --save
- npm add axios --save
都。不。行。【咱就是说,为什么那时候就跟npm杠上了呢。。。哪怕用淘宝试一试呢。。。】
4、开始看似沉着冷静实则不讲科学漫无思绪的思考:是因为哪个的版本出了问题吗?更的太新还是更的太慢?npm?node?vue?vue-cli?webpack?然后除了webpack别的都升到最新了,到后面可能真的会有问题还得再退回来。。。。。
5、报错又变惹
npm ERR! code ETARGET
npm ERR! notarget No matching version found for @vue/cli-plugin-router@3.12..
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
当时啥也弄了不知道触发了什么就出现了这个,给当时的我带来了一丝生机,查了资料这是指定版本没有安装成功的问题,但@vue/cli-plugin-router的版本库里就是打三年前都没这个版本,看了下别的博主的回答,找到.vuerc文件,要把useTaobaoRegistry改成true,可是我的文件一打开就是true,所以并不管用。
6、不过5给了我一点启发,我打开失败项目的package.json,想和成功项目的对比一下,这么一看确实是有问题:
错误版:
正确版:
【当时就给我看迷茫了,干嘛非给我几个插件都退回到3.的版本,而且最开始项目下载下来的时候版本都是正确的,是在下axios报错后执行了npm audit fix才将它们的版本倒退到3.】
三、居然解决了
也不知道是咋想的,或许就是灵光一闪瞎猫撞上死耗子,或许是冥冥中尤雨溪为我指引了方向(sorry,碰瓷了),但可能是我真的累了。。。。重开了个项目,随手打了个cnpm,axios顺利的下下来了。。。。。【点烟中
总结
咱就是说,之所以有cnpm那真的是有原因的。
npm你到底有什么毛病,就非要@vue/cli-plugin-router@3.12稳定版是吧,你就这么爱它。
无语。