在Vue的教学视频中,下载Vue的浏览器调试工具Devtools有下面六步:

  1. 克隆仓库
    1
    git clone https://github.com/vuejs/devtools.git
  2. 在vue-devtools目录下安装依赖包
    1
    2
    3
    cd devtools        //进入当前目录
    npm install       //下载依赖(报错解决方法看下面)
    //使用npm需科学上网,或者cnpm国内镜像下载更快
  3. 构建
    1
    npm run build      //打包
  4. 打开Chrome扩展页面
  5. 选中开发者模式
  6. 加载已解压的扩展,选择shells/chrome

但是在第二步npm install安装依赖包的时候发生了如下报错:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$ npm install
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: vue-devtools@6.1.0
npm ERR! Found: eslint@7.32.0
npm ERR! node_modules/eslint
npm ERR! dev eslint@"^7.26.0" from the root project
npm ERR! peer eslint@"^7.12.1" from @vue/eslint-config-standard@6.1.0
npm ERR! node_modules/@vue/eslint-config-standard
npm ERR! dev @vue/eslint-config-standard@"^6.0.0" from the root project
npm ERR! 3 more (eslint-plugin-import, eslint-plugin-node, eslint-plugin-promise)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer eslint@"^5.0.0 || ^6.0.0" from eslint-plugin-vue@6.2.2
npm ERR! node_modules/eslint-plugin-vue
npm ERR! dev eslint-plugin-vue@"^6.0.0" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See C:\Users\10272\AppData\Local\npm-cache\eresolve-report.txt for a full report.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\10272\AppData\Local\npm-cache\_logs\2022-03-13T05_23_44_413Z-debug.log

机翻一下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
$npm安装
npm错误!代码解析
npm错误!ERESOLVE无法解析依赖关系树
npm错误!
npm错误!解析时:vue-devtools@6.1.0
npm错误!发现:eslint@7.32.0
npm错误!节点_模块/eslint
npm错误!从根项目开发eslint@“^7.26.0”
npm错误!从@vue/eslint config中对等eslint@“^7.12.1”-standard@6.1.0
npm错误!node_modules/@vue/eslint配置标准
npm错误!根项目中的dev@vue/eslint配置标准“^6.0.0”
npm错误!3个(eslint插件导入、eslint插件节点、eslint插件承诺)
npm错误!
npm错误!无法解析依赖关系:
npm错误!来自eslint插件的对等eslint@“^5.0.0 | | ^6.0.0”-vue@6.2.2
npm错误!节点_模块/eslint插件vue
npm错误!根项目中的dev eslint插件vue@“^6.0.0”
npm错误!
npm错误!修复上游依赖项冲突,或重试
npm错误!此命令使用--force或--legacy peer deps
npm错误!接受不正确(且可能已损坏)的依赖项解析。
npm错误!
npm错误!请参阅C:\Users\10272\AppData\Local\npm cache\eresolve report。txt获取完整报告。

npm错误!此运行的完整日志可在以下位置找到:

npm错误!C:\Users\10272\AppData\Local\npm cache\\u logs\2022-03-13T05\u 23\u 44\u 413Z-debug。日志

在技术群里问了一下,原因是依赖冲突:eslint-plugin-vue 不支持 eslint@7。

解决方法是查看最新版本是否支持,或者寻找替代,或者提议作者支持。

或者强制安装npm install --force,但可能会发生意料之外的错误。

问了一下提莫,他也说是因为版本问题,于是我去对比了一下GitHub原项目和npm官网的版本区别,发现:

  1. 克隆的项目是6.1.0版本:https://github.com/vuejs/devtools
  2. 然后NPM最高是5.1.4版本:https://www.npmjs.com/package/vue-devtools

所以我再次去了解了一下npm:

NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:

  1. 允许用户从NPM服务器下载别人编写的第三方包到本地使用。
  2. 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
  3. 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

所以npm其实和GitHub一样都是存项目文件的仓库?

不是,GitHub存源码,npm上是打包好的包。Emm…具体怎么解释呢,看几篇文章吧:

  1. npm,node,webpack 的区别
  2. 一个npm包的自述
  3. “一个project需要很多package,而且每个package又有可能需要其他的package. 用npm直接可以全部安装, 难道要一个一个去github找,然后下载解压复制黏贴吗..”
  4. 谈谈NPM和Webpack的关系
  5. 对webpack、git、github、npm的理解
  6. “github使用git clone +代码 ,可以下载代码。npm通过npm install 安装,可以直接使用。”
  7. “yarn是可替代npm的包管理器。Yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具 ,正如官方文档中写的,Yarn 是为了弥补 npm 的一些缺陷而出现的。”
  8. npm和yarn的区别,我们该如何选择?

好了好了…本来想理解一下npm是什么,怎么相关东西越来越多了…


所以究竟怎么办呢?我就仅仅只是想简简单单安装个vue-devtools浏览器插件而已啊…

什么?插件?脑子里一道光闪过…

于是我点开了Edge浏览器右上角的三个点,选择“扩展”,打开管理扩展页面,点击“查找新扩展”(获取 Microsoft Edge 扩展),搜了一下vue-devtools,好家伙…有人搬运了早就…啊这…

bqcEqJ.png
bqguwj.png

那在浏览器扩展中直接安装插件和从GitHub下载再安装的有啥区别?

结论是没有区别,也就是说,这一中午我白忙活了。

明明是一键就能安装的小问题,我又是去GitHub克隆,又是用npm安装,又是询问查找报错原因…傻蛋一个…


但是,但是!

获取按钮点完之后,提示“出现问题,Download interrupted(下载中断)!”

我晕…我以为是网络问题,翻了一下墙,还是下载失败。

掀桌(╯‵□′)╯︵┻━┻


所以最后我怎么办的呢?

找同学要了一个vue-devtools.zip压缩包,解压后,在Edge浏览器的扩展页面打开开发人员模式,然后点击加载可压缩的扩展,选择解压后的文件夹,添加成功。Edge右上角出现了Vue插件的的LOGO图标。

So…What?Why?

那vue-devtools的作者在GitHub上的源文件不能用,最后靠同学给的压缩包2分钟就解决了…

啊不是,我醉了啊!!!

掀桌(╯‵□′)╯︵┻━┻


【2022年3月28日】加更

提莫说我Edge浏览器下载不成功的原因可能是DNS污染了,可以修改一下本机的DNS,或者舍弃Edge换成Chrome浏览器。我选择了后者,并成功在扩展工具商店很快地下载好了Vue Devtools插件。

以后换阵地吧,垃圾Edge,狗都不用!(doge)


【相关网站】:

对了,有空我再通过学生认证去申请一下GitHub Pro:
GitHub教程 学生认证 | 申请学生开发包