核心概念

  • 清理工具:npkill - 清理 node_modules
  • 检查工具:depcheck - 检查未使用依赖
  • 更新工具:npm-check-updates - 检查依赖更新

一、依赖清理工具

1.1 npkill - 清理 node_modules

使用场景:磁盘空间不足,需要清理项目中的 node_modules 文件夹

# 安装
npm install -g npkill
 
# 使用 - 交互式选择要删除的 node_modules
npx npkill
 
# 指定扫描目录
npx npkill -d /path/to/scan
命令参数说明
-d指定扫描目录
-f完全删除,不经过回收站
--exclude排除指定目录

安全提示

  • 使用前请确认项目不再需要
  • 建议先用 git status 确认无重要更改
  • 删除后可用 npm install 重新安装

二、依赖检查工具

2.1 depcheck - 检查未使用依赖

使用场景:项目依赖过多,需要清理 package.json 中未使用的包

# 安装
npm install -g depcheck
 
# 检查当前项目
depcheck
 
# 检查指定目录
depcheck ./my-project
 
# 忽略特定依赖
depcheck --ignore=eslint

输出示例:

Unused dependencies
* lodash (never used)
* moment (never used)

Missing dependencies
* axios: ./src/api.js
命令参数说明
--ignore忽略指定的依赖
--ignores忽略指定模式的文件
--json输出 JSON 格式结果

三、依赖更新工具

3.1 npm-check-updates - 检查依赖更新

使用场景:项目需要升级依赖版本,保持最新

# 安装
npm install -g npm-check-updates
 
# 查看可更新的依赖
ncu
 
# 升级 package.json 中的依赖(不安装)
ncu -u
 
# 安装新版本的依赖
npm install

常用命令:

命令说明
ncu查看可更新的依赖
ncu -u更新 package.json
ncu -i更新 package.json 并安装
ncu --reject [dep]排除指定依赖

示例:

# 只检查生产依赖
ncu --prod
 
# 只检查开发依赖
ncu --dev
 
# 排除特定依赖
ncu --reject webpack,eslint

四、其他实用工具

4.1 代码规范类

工具名用途安装命令
ESLintJavaScript 代码检查npm i -D eslint
Prettier代码格式化npm i -D prettier
StylelintCSS 代码检查npm i -D stylelint

4.2 性能分析类

工具名用途安装命令
webpack-bundle-analyzer打包体积分析npm i -D webpack-bundle-analyzer
speed-measure-webpack-plugin打包速度分析npm i -D speed-measure-webpack-plugin

4.3 开发辅助类

工具名用途安装命令
huskyGit hooks 管理npm i -D husky
lint-staged暂存文件 lintnpm i -D lint-staged
commitlint提交信息规范npm i -D commitlint

相关链接