全部学科
Python全栈
python
NodeJS全栈
nodejs
📅 2026-05-25 6 分钟 ✍️ juanwangdev

npm脚本执行与依赖查看

npm脚本是项目自动化的入口,依赖树查看是排查问题的关键手段。

npm run执行脚本

基本用法

JSON
{
  "scripts": {
    "build": "webpack --mode production",
    "lint": "eslint src/"
  }
}
Bash
npm run build
npm run lint

查看所有可用脚本

Bash
npm run

输出package.json中所有scripts条目。

传递参数

Bash
# 通过--向脚本传参
npm run lint -- --fix

实际执行:eslint src/ --fix

脚本中使用环境变量

JSON
{
  "scripts": {
    "dev": "NODE_ENV=development node server.js"
  }
}

Windows下直接使用NODE_ENV=xxx语法不生效,需借助cross-env包实现跨平台环境变量设置。

npm start与npm test

npm start

JSON
{
  "scripts": {
    "start": "node server.js"
  }
}
Bash
# 以下两条命令等价
npm start
npm run start

若未定义start脚本,NPM默认执行node server.js

npm test

JSON
{
  "scripts": {
    "test": "jest --coverage"
  }
}
Bash
npm test
# 等价于
npm run test

start、test、stop、restart是NPM内置脚本,执行时可直接省略run。

npm list查看依赖树

基本用法

Bash
# 查看当前项目依赖树
npm list

# 查看全局安装的包
npm list -g

# 只看顶层依赖
npm list --depth=0

查看指定包的依赖路径

Bash
npm list lodash

输出示例:

Bash
my-project@1.0.0
└── lodash@4.17.21

查看包的安装路径

text
npm root
# 输出:/path/to/project/node_modules

大型项目依赖树层级深,npm list输出可能很长,推荐使用--depth=0仅查看顶层依赖。

要点总结

  • 自定义脚本用npm run <name>执行,内置脚本(start/test/stop/restart)可省略run
  • 向脚本传参使用--分隔,如npm run build -- --watch
  • npm list --depth=0查看顶层依赖,npm list <pkg>查看指定包路径
  • Windows环境下设置环境变量建议使用cross-env包
想在手机上练习这篇文章的配套题目?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一篇 依赖版本范围与更新策略
下一篇 → npm outdated与info命令
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码