平面化 node_module 不會是唯一的方法
· One min read
新使用者經常問我關於 pnpm 生成出來的奇怪 node_modules
資料夾結構。 為什麼它不是扁平化的? 而且全部的子依賴套件跑去哪了?
在此會假設此文讀者已經熟悉了 npm 和 Yarn 創建出來的扁平化
node_modules
資料夾。 如果您不了解為什麼 npm 要在第三版開始使用扁平化node_modules
,您可以在為什麼我們應該使用pnpm文章中找到一些背景
所以為什麼 pnpm 的 node_modules
如此特殊? 讓我們先創建兩個資料夾,然後在其中一個資料夾執行 npm add express
,另一個資料夾執行 pnpm add express
以下是您能在第一個資料夾中的 node_modules
內能看到的資料夾:
.bin
accepts
array-flatten
body-parser
bytes
content-disposition
cookie-signature
cookie
debug
depd
destroy
ee-first
encodeurl
escape-html
etag
express
您可以在這裡看到整個資料夾結構
以及,這是您能在 pnpm 創建的 node_modules
資料夾中看到的:
.pnpm
.modules.yaml
express