npm使用介绍

一、概念

npm 全称 Node Package Manager,是 Node.js 的官方包管理工具

二、核心作用

  1. 安装:你的项目需要某个功能(如解析 Excel、发邮件、做图表),不必自己从头写代码。打开命令行,执行 npm install 某个包名,npm 就会从它的官方仓库下载这个包及其所有依赖,放进你的项目里。
  2. 发布:如果你写了一个好用的工具库,可以通过 npm publish 命令,把它发布到 npm的公共仓库。全世界其他开发者就能通过 npm install 你的包名 来使用它。
  3. 管理版本与依赖:项目根目录下的 package.json文件就像一个"物料清单",记录了项目需要哪些包、每个包的版本。npminstall可以一键根据这个清单安装所有依赖。package-lock.json则锁定精确的版本号,确保团队或服务器上的安装结果完全一致。

三、关键文件

  1. package.json:项目清单。手工或通过 npm init
    创建,记录了项目名称、版本、依赖包(dependencies)、开发依赖包(devDependencies)、可执行脚本(scripts)等信息。
  2. package-lock.json:精确锁定每个依赖包的具体版本号和下载地址,保证在不同电脑上安装的结果完全一致。
  3. node_modules 文件夹:实际存放下载的所有包代码的地方。通常体积大、层级深,不应上传到 Git(会写入 .gitignore)。

四、常用的 npm 命令

bash 复制代码
命令	作用
npm init -y	快速创建 package.json
npm install 或 npm i	根据 package.json 安装所有依赖
npm install 包名	安装指定包,并记录到 dependencies
npm install -D 包名	安装开发依赖(测试、打包工具等),记录到 devDependencies
npm install -g 包名	全局安装(作为命令行工具使用)
npm uninstall 包名	卸载包
npm update	更新包到允许的最新版本
npm run 脚本名	执行 package.json 中 scripts 定义的命令

五、全局安装 vs 本地安装

bash 复制代码
  类型	         存放位置	             用途	                        例子
本地(默认)	  项目下的 node_modules	项目运行时需要的库	            lodash, axios
全局(-g参数) 系统目录	            提供可在任何地方运行的命令行工具	npm, yarn, create-react-app

六、补充

  1. npm 无需单独安装,它会随着 Node.js 自动安装到电脑上。
  2. npx:npm 自带的小工具,用于临时执行某个包而无需全局安装,如npx create-react-app my-app。
  3. 不要直接修改 node_modules里的代码:所有修改都会在下次安装时丢失。如果需要改包,用 patch-package 或 fork 项目。
  4. package-lock.json 要提交到 Git:确保团队成员和服务器安装完全相同的版本。
相关推荐
鬼手点金4 小时前
nanoGPT/nanochat 能做出 DeepSeek/Qwen 这样的大模型吗?
服务器·前端·javascript·bug·openclaw
蛋蛋的就会顺顺的4 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
程序员Sunday4 小时前
TypeScript 的 any、unknown、never 有什么区别?
前端·面试·typescript
朱涛的自习室5 小时前
70 美金的 Beyond Compare,我让 Gemini 4 和 DeepSeek 造个开源免费版(Day 2)
android·前端·人工智能
码艺-Alimjan5 小时前
Tauri 源码备份 · 打包 & 解压 总结,源码收集之路
前端·javascript·vue.js
小马不起床5 小时前
零基础玩转 FastAPI_11:前端后台管理页面
前端·状态模式·fastapi
子非鱼a7 小时前
【文件上传】一个普普通通的edu16
前端
美狐美颜SDK开放平台7 小时前
直播APP如何实现美白滤镜功能?视频美颜SDK技术开发方案详解
前端·数据库·人工智能·音视频·美颜sdk·直播美颜sdk·视频美颜sdk
pride.li8 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉
屏什么录8 小时前
电脑如何录屏幕视频和声音?从工具到代码,7 种方案帮你彻底搞定
前端·音视频开发