npm 常用命令指南

npm 常用命令指南

npm(Node Package Manager)是 Node.js 的包管理工具,用于安装、管理和分发 JavaScript 包和依赖项。以下是 npm 中一些常用的命令及其功能:


1. 安装包
  • 全局安装 :将包安装到全局环境,供所有项目使用。

    bash 复制代码
    npm install -g <package-name>
  • 局部安装 :将包安装到当前项目的 node_modules 目录中。

    bash 复制代码
    npm install <package-name>

2. 查看已安装的包
  • 查看全局安装的所有包:

    bash 复制代码
    npm list -g
  • 查看当前项目依赖的包:

    bash 复制代码
    npm list

3. 卸载包
  • 全局卸载一个包:

    bash 复制代码
    npm uninstall -g <package-name>
  • 局部卸载一个包(从当前项目中删除):

    bash 复制代码
    npm uninstall <package-name>

4. 初始化项目

创建一个新的 Node.js 项目,并生成 package.json 文件。

bash 复制代码
npm init -y

或者逐步填写配置信息:

bash 复制代码
npm init

5. 管理依赖
  • 添加一个包到 dependencies 列表中(自动写入 package.json):

    bash 复制代码
    npm install <package-name> --save
  • 添加一个包到 devDependencies 列表中(开发环境依赖):

    bash 复制代码
    npm install <package-name> --save-dev

6. 运行脚本

执行 package.json 中定义的脚本命令。

bash 复制代码
npm run <script-name>

例如,如果 package.json 中有 "start": "node index.js",则运行:

bash 复制代码
npm start

7. 更新包
  • 更新所有依赖到最新版本(根据 package.json 的语义化版本规则):

    bash 复制代码
    npm update
  • 全局更新 npm:

    bash 复制代码
    npm install -g npm@latest

8. 搜索包

在 npm 仓库中搜索包。

bash 复制代码
npm search <package-name>

9. 清理缓存

清除 npm 的缓存文件(解决安装问题时常用)。

bash 复制代码
npm cache clean --force

10. 检查过时依赖

检查项目中是否有过时的包。

bash 复制代码
npm outdated

11. 安装特定版本

安装指定版本的包:

bash 复制代码
npm install <package-name>@<version>

例如:

bash 复制代码
npm install react@18.2.0

12. 发布包(可选)

如果你是包的开发者,可以发布自己的包到 npm 仓库。

bash 复制代码
npm publish

13. 设置镜像源(可选)

为了加快安装速度,可以设置 npm 的镜像源为中国大陆的镜像(如淘宝镜像):

bash 复制代码
npm config set registry https://registry.npm.taobao.org

恢复默认镜像:

bash 复制代码
npm config set registry https://registry.npmjs.org/

14. 查看帮助

查看 npm 的帮助信息。

bash 复制代码
npm help

总结

以上是 npm 中一些常用的命令,涵盖了包的安装、卸载、管理、依赖处理以及项目初始化等功能。熟练掌握这些命令可以大大提高开发效率!

相关推荐
给月亮点灯|5 分钟前
Vue基础知识-脚手架开发-使用Axios发送异步请求+代理服务器解决前后端分离项目的跨域问题
前端·javascript·vue.js
张迅之38 分钟前
【React】Ant Design 5.x 实现tabs圆角及反圆角效果
前端·react.js·ant-design
蔗理苦2 小时前
2025-09-05 CSS3——盒子模型
前端·css·css3
二川bro3 小时前
第25节:VR基础与WebXR API入门
前端·3d·vr·threejs
上单带刀不带妹3 小时前
Node.js 的模块化规范是什么?CommonJS 和 ES6 模块有什么区别?
前端·node.js·es6·模块化
缘如风3 小时前
easyui 获取自定义的属性
前端·javascript·easyui
诗书画唱3 小时前
【前端教程】JavaScript 实现图片鼠标悬停切换效果与==和=的区别
开发语言·前端·javascript
光影少年3 小时前
前端上传切片优化以及实现
前端·javascript·掘金·金石计划
喜葵3 小时前
前端安全防护深度实践:从XSS到供应链攻击的全面防御
前端·安全·xss
_r0bin_3 小时前
分片上传-
前端·javascript·状态模式