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

相关推荐
万少4 小时前
HarmonyOS 开发必会 5 种 Builder 详解
前端·harmonyos
橙序员小站6 小时前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
炫饭第一名8 小时前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫9 小时前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊9 小时前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter9 小时前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
曲折9 小时前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_9 小时前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js
Angelial9 小时前
Vue3 嵌套路由 KeepAlive:动态缓存与反向配置方案
前端·vue.js
jiayu10 小时前
Angular学习笔记24:Angular 响应式表单 FormArray 与 FormGroup 相互嵌套
前端