Bootstrap

vue项目中使用depcheck检查缺失的依赖项目

使用depcheck检查缺失的项目依赖

由来:今天在做地铁的时候,刷短视频发现一个非常好用的东西,分享一下

它可以帮助我们找出问题,在 package.json 中,每个依赖包如何被使用、哪些依赖包没有用处、哪些依赖包缺失。它是解决前端项目中依赖包清理问题的一个常用工具。

我们以前只知道装了哪些包,却不知道有些包用没用到或者哪些依赖包缺失了不知道怎么办,现在depcheck就知道了

1.首先在项目中全局安装一下
npm install -g depcheck

depcheck

2.然后在你项目的根目录下执行以下命令:
depcheck

depcheck
就会出来这些东西,分别给你们解释下各自是干嘛的
Unused dependencies:未使用的依赖关系,这个是你在项目中没有用到的包,删除的时候记得全局搜索下,有的包是真的没用到,有的包你用了,但是在项目中注释掉,暂时先不用,不然后面也是一个大坑。
Unused devDependencies:未使用的依赖模块,这个在你项目中的package.json里的devDependencies这个东西,是不是似曾相识
Missing dependencies:缺少,缺失的依赖关系,这个在你运行项目的时候一老警告的那些东西

3.安装缺失的依赖包

比如,我上述缺失这个iview的包,我就安装安装下

npm i c-design --save
4.删除未使用的依赖包
 npm uninstall iview-area qrcodejs2

depcheck 的基本语法看下面

其中,directory 是项目根目录(即 package.json 文件所在的目录)。如果未指定,默认为当前目录。所有参数都是可选的:

  • –ignore-bin-package=[true|false]:表示 depcheck 是否忽略包含 bin 入口的包。默认值为 false。
  • –skip-missing=[true|false]:表示 depcheck 是否跳过计算缺失的依赖项。默认值为 false。
  • –json:以 JSON 格式输出结果。当未指定时,depcheck 会以友好的格式输出。
  • –oneline:将结果作为用空格分隔的字符串输出。用于复制/粘贴很有用。
  • –ignores:一个由逗号分隔的数组,包含要忽略的包名称。它可以是 glob 表达式。例如,–ignores=“eslint,babel-*”。
  • –ignore-dirs:已过时,请改用 ignore-patterns。一个由逗号分隔的数组,包含要忽略的目录名称。例如,–ignore-dirs=dist,coverage。
  • –ignore-path:指定包含描述要忽略的文件的模式的文件的路径。文件必须符合 .gitignore 规范。例如,–ignore-path=.eslintignore。
  • –ignore-patterns:用逗号分隔的描述要忽略的文件的模式。模式必须符合 .gitignore 规范。例如,–ignore-patterns=build/Release,dist,coverage,*.log。
  • –help:显示帮助信息。
  • –parsers、–detectors 和 --specials:这些参数用于高级用途。它们提供了一种易于定制文件解析器和依赖项检测的方法。。
  • –config=[文件名]:一个外部配置文件(见下文)。
    例如,想忽略某些包或文件夹,可以在命令后面添加相应的选项:
depcheck --ignores="eslint" --ignore-dirs="dist"

官方文档地址
Github:https://github.com/depcheck/depcheck

;