介绍
depcheck 是一款用于检测项目中 未使用依赖项
的工具。
depcheck 通过扫描项目文件,帮助你找出未被引用的依赖,从而优化项目
。
优势:
-
简单易用: 仅需几个简单的命令,就能够扫描并列出未使用的依赖项,让你快速了解项目中的依赖情况。
-
跨项目使用: depcheck 不仅适用于特定类型的项目,它支持 JavaScript、TypeScript、Node.js 等多种项目类型,为广大开发者提供了极大的便利。
-
定制化输出: 除了简洁的扫描结果外,depcheck 还提供多种输出格式选项,满足不同开发者的需求。
-
排除误报: 有时依赖项可能被误判为未使用的,但 depcheck 允许你设置忽略规则,避免误报情况。
安装
npm install -g depcheck
注意: depcheck 需要 node.js >= 10。
使用
在项目 根目录 下直接执行命令 depcheck,
或者 depcheck <你的项目目录> 。
输入结果 分为3个部分:
常用的参数
- –skip-missing=[true | false]:默认 false,表示是否检测 Missing 的依赖包
- –ignore-bin-package=[true | false]:默认 false,表示是否忽略包含 bin 条目的包
- –json:表示所有包的检测结果以 json 格式输出,大概就是 XX 包在哪些文件使用了,{“包名”:[“path1”,“path2”]}
- –ignores=“eslint,babel-":表示要忽略的包名称(逗号分隔),比如 depcheck --ignores="eslint,@babel/,babel-*”
- –ignore-path:表示要忽略的文件的模式的文件的路径,比如 depcheck --ignore-path=.eslintignore
- –ignore-dirs:已经弃用,使用 --ignore-patterns 替代,表示要忽略的目录名,逗号分隔–ignore-dirs=dist,coverage
- –ignore-patterns:表示要忽略的用逗号分隔的模式描述文件,比如 depcheck --ignore-patterns=build/Release,dist,coverage,*.log
- –parsers, --detectors and --specials:高级的语法使用参考官方文档
- –config=[filename]:外部配置文件
配置文件
创建一个 .depcheckrc 文件,然后直接配置
ignores: ["eslint", "babel-*", "@babel/*"]
skip-missing: true
场景一:依赖缺失 检查
实际场景中会经常接手别人的项目,遇到的第一个困难可能是,一周运行不起来项目…
根据上面使用的输出结果,将 Missingdependencies
部分的依赖 下载下来。
场景二:无用的依赖 检查
在软件开发中,我们经常引入各种依赖以支持项目功能,但这些依赖可能随着时间的推移变得多余或被遗忘。
根据上面使用的输出结果,将 Unused dependencies
和 Unused devDependencies
部分的依赖 删除掉。