npm(Node Package Manager)是Node.js生态系统中不可或缺的部分,它负责软件包的管理,包括安装、更新、卸载以及版本控制等功能。下面是一些常用的npm命令及其实际应用场景的详解:
初始化项目
- 命令 :
npm init或npm init -y- 说明 :创建一个
package.json文件,用于存储项目的元数据和依赖关系。使用-y参数会接受所有默认值快速初始化。
- 说明 :创建一个
安装依赖
- 命令 :
npm install <package>或npm i <package>- 说明 :安装指定的npm包。如果想要安装特定版本,可以使用
@<version>,如npm install express@4.17.1。 - 参数 :
-S或--save:将包添加到dependencies列表,用于生产环境。-D或--save-dev:将包添加到devDependencies列表,用于开发环境。-E或--save-exact:精确保存包的确切版本号。
- 说明 :安装指定的npm包。如果想要安装特定版本,可以使用
卸载依赖
- 命令 :
npm uninstall <package>- 说明 :从项目中移除指定的npm包,并从
package.json中删除相关条目。
- 说明 :从项目中移除指定的npm包,并从
更新依赖
- 命令 :
npm update [package]- 说明:更新指定的npm包或所有包到最新版本。不指定包名时,默认更新所有。
查看依赖
- 命令 :
npm list或npm ls- 说明:显示项目中已安装的依赖包及其版本,包括子依赖。
运行脚本
- 命令 :
npm run <script-name>- 说明 :执行
package.json中的脚本。例如,npm run start通常用于启动开发服务器。
- 说明 :执行
查看包信息
- 命令 :
npm view <package> [property]- 说明:查看npm仓库中某个包的详细信息,可选地查看特定属性,如版本或依赖。
发布包
- 命令 :
npm publish- 说明:将当前目录下的包发布到npm注册表。确保已登录npm账号且满足发布条件。
全局命令
- 安装 :
npm install -g <package>- 卸载 :
npm uninstall -g <package> - 说明 :全局安装或卸载npm包,这些包通常是命令行工具,如
create-react-app。
- 卸载 :
缓存管理
- 清理缓存 :
npm cache clean --force- 说明:强制清理npm的缓存,解决因缓存引起的安装问题。
版本控制
- 命令 :
npm version <patch|minor|major>- 说明 :在
package.json中自动递增版本号。patch小版本,minor中版本,major大版本。
- 说明 :在
搜索包
- 命令 :
npm search <keyword>- 说明:根据关键词搜索npm仓库中的包。
链接本地包
- 命令 :
npm link- 说明:在开发本地模块时,此命令可以创建一个符号链接,使得你可以在其他项目中如同安装的模块一样使用这个本地模块,便于快速迭代和测试。
链接到全局包
- 命令 :在模块目录下执行
npm link,然后在使用该模块的项目中执行npm link <module-name>- 说明:允许你在全局安装的模块和本地项目之间建立链接,便于调试全局模块。
使用npm脚本别名
- 在
package.json中定义脚本时,可以使用"scripts": {"alias": "command-to-run"}- 说明 :这允许你为复杂的命令或频繁执行的任务创建简短的别名,例如
"start": "node server.js"。
- 说明 :这允许你为复杂的命令或频繁执行的任务创建简短的别名,例如
查看npm配置
- 命令 :
npm config list- 说明:显示npm的当前配置,包括全局设置和用户特定设置。这有助于诊断权限、代理设置或注册表来源问题。
更改registry源
- 命令 :
npm config set registry https://registry.npmjs.org/- 说明 :更改npm下载包的源地址。在中国,可能需要更改为淘宝镜像源
https://registry.npm.taobao.org/以加速下载。
- 说明 :更改npm下载包的源地址。在中国,可能需要更改为淘宝镜像源
安装并保存为开发依赖
- 命令 :
npm install --save-dev <package>- 说明 :安装包的同时,将其添加到
devDependencies中,适用于那些只在开发和构建过程中需要的包。
- 说明 :安装包的同时,将其添加到
查看过时的依赖
- 命令 :
npm outdated- 说明:列出项目中所有过时的依赖包及其最新版本,帮助你决定是否需要更新。
安装所有开发依赖
- 命令 :在新克隆的项目中,直接运行
npm install或npm ci(如果你有package-lock.json或npm-shrinkwrap.json文件)。- 说明 :这会根据
package.json或锁定文件安装所有必要的依赖,非常适合CI/CD流程或团队协作时确保环境一致性。
- 说明 :这会根据
查看npm帮助
- 命令 :
npm help <command>或npm <command> --help- 说明:获取特定命令的详细帮助文档,了解其可用选项和用法。
使用npx
- 命令 :
npx <package> [args]- 说明:允许你直接运行npm包中的命令,无需全局安装。这对于一次性使用的包特别方便。