npm 随 Node.js 自带,运行 npm --version 可验证;用 npm init -y 初始化生成 package.json;安装依赖分 dependencies(npm install)、devDependencies(--save-dev)和全局(-g);更新需谨慎,npm update 不跨主版本,升级主版本须显式指定如 @latest;删除用 npm uninstall;node_modules 不提交,但 package-lock.json 必须提交以保证依赖一致性。

npm 是 Node.js 自带的包管理器,不需要单独安装——只要装了 node,就一定有 npm。验证方法是终端运行 npm --version,能输出版本号就说明可用。
初始化项目并生成 package.json
每个使用 npm 管理依赖的项目都必须有 package.json 文件。它记录项目信息、脚本和依赖关系。不手动写,用命令生成:
npm init -y
加 -y 是跳过交互式提问,直接生成默认配置。如果想逐项填写(比如改入口文件名、作者名),去掉 -y 即可。
注意:package.json 里 name 字段不能含大写字母或空格,否则后续 publish 会失败;version 必须是合法语义化版本格式(如 1.0.0),不能是 1.0 或 dev。
立即学习“Java免费学习笔记(深入)”;
安装依赖:区分 --save、--save-dev 和 --global
npm v5+ 默认把依赖写入 package.json,但写入哪个字段取决于用途:
-
npm install lodash→ 写入dependencies:运行时必需的包(如axios、react) -
npm install eslint --save-dev→ 写入devDependencies:仅开发时需要(如webpack、jest) -
npm install http-server -g→ 全局安装,命令行工具类(如http-server、typescript),不写入项目package.json
全局安装的包无法在项目代码中 require() 或 import,因为不在 node_modules 本地目录下。
更新依赖:别只靠 npm update
npm update 只会升级到 package.json 中指定范围内的最新兼容版本(比如 "lodash": "^4.17.21" 最多升到 4.x.x,不会到 5.0.0)。要升级到新主版本,必须显式指定:
- 升级单个包到最新版:
npm install lodash@latest - 升级到特定版本:
npm install lodash@4.18.0 - 检查哪些包可更新:
npm outdated(会列出当前版本、期望范围、最新版)
升级后务必测试,尤其主版本变更(如从 vue@2 升到 @3)往往有破坏性改动。不要无脑 @latest。
删除依赖和清理 node_modules
删包用 npm uninstall,并自动从 package.json 移除对应条目:
- 删运行时依赖:
npm uninstall lodash - 删开发依赖:
npm uninstall eslint --save-dev
node_modules 目录体积大、平台相关,不应提交到 Git。确保项目根目录有 .gitignore,内容包含:
node_modules/ package-lock.json
注意:package-lock.json 必须提交——它锁定所有依赖的精确版本和子依赖树,保证不同机器安装结果一致。删掉它会导致协作时依赖不一致,引发难以复现的问题。











