yarn 与 pnpm
npm 之外常见的包管理器是 yarn 与 pnpm。yarn 最早以快(并行下载、缓存)闻名;pnpm 则用“全局存储 + 软链接”方案,一个包只在磁盘存一份,几百个项目共享,磁盘占用能省 70% 以上。
三者命令几乎对应(install / add / remove / run),切换成本低。pnpm 还有个关键优点:严格的依赖隔离——你不能 import 没在 package.json 里声明的包(npm/yarn 的扁平 node_modules 做不到),这让“幽灵依赖”无处遁形。
- pnpm:磁盘占用最低、依赖隔离最严格,新项目首选
- yarn workspaces / pnpm -w:单仓库管理多个子包(Monorepo)
- 三种管理器都有 lockfile,混用时认准一个、不要互相覆盖
npm
// 常用命令对照表 // 操作 npm yarn pnpm // 安装全部依赖 npm install yarn pnpm install // 装某个包 npm i axios yarn add axios pnpm add axios // 装开发依赖 npm i -D vite yarn add -D vite pnpm add -D vite // 删除包 npm rm axios yarn remove axios pnpm remove axios // 跑脚本 npm run dev yarn dev pnpm dev // 临时执行 npx create-vite yarn dlx create-vite pnpm dlx create-vite // pnpm Monorepo:pnpm-workspace.yaml 声明子包目录 // packages: // - 'packages/*' // 每个子目录是一个子项目 // - 'components/*' // 子包间可互相引用,共享一套依赖
本节要点pnpm 省磁盘且防线严格(新项目首选);三个管理器命令一一对应,切换成本低。




