当前位置: 首页 > 知识库问答 >
问题:

javascript - pnpm帮我们管理monorepo了什么呢?没有理解。 pnpm是安装包到node_modules对吗?

司寇望
2023-06-28

在看meathill老师的monorepo的视频时候:

image.png

pnpm帮我们管理了什么呢?没有理解。
pnpm是安装包到node_modules对吗?
但是npm也可以啊。

共有1个答案

谈琛
2023-06-28

其实视频里有讲。相比于 npm,pnpm 有以下改进:

  1. 同样的包只下载一次
  2. 使用硬链将安装包放入 node_modules

所以 pnpm 速度很快,也很省硬盘。在这个前提下,pnpm 就可以放心大胆的在每个子项目目录下都安装完整的依赖,于是每个子项目都是完整的项目,开发环境与普通项目无异,几乎不会出问题。

如果你用过其它工具,比如 lerna+yarn,你就会知道,为了节省硬盘和网络,lerna 会想办法把通用依赖放在根路径,子项目专用包才安装到项目路径。此时,升级依赖就可能导致依赖错乱,经常需要彻底删掉 node_modules 和 lock 文件全新安装才能修复。

 类似资料: