国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

還是不明白 npm、yarn、pnpm、cnpm?

存儲 存儲架構
pnpm 通過一種“硬鏈接 + 內容尋址”的存儲方式,將所有依賴包統一下載到全局緩存中(.pnpm-store?),每個項目的 node_modules 并不真的“安裝”包,而是使用軟鏈接指向緩存中的真實文件,同一個包只會下載、存儲一份,再多個項目共用。

包管理工具是前端開發中的重要一環,但是現在前端的包管理工具有很多。很多新同學很難搞清這么多不同的包管理工具之間的差異,所以說,咱們今天就針對 npm、yarn、pnpm、cnpm 來進行下統一的介紹,幫大家梳理清楚這些包管理工具的區別!

npm:當之無愧的老大哥

說起前端的包管理工具,就不得不提 npm ——全稱 Node Package Manager,是 Node.js 官方自帶的包管理器,也是前端構建工具鏈的基礎之一。

npm 最初誕生于 2010 年,當時隨著 Node.js 的流行而快速崛起,它解決了 JavaScript 社區長期以來的代碼共享難題 —— 你不再需要手動復制粘貼 JS 代碼片段,而是可以直接通過一個命令安裝和管理第三方模塊。

在那個前端還靠一手 jQuery 打天下的年代,npm 在當年絕對是一種全新的概念。

npm 包含了如下核心功能:

  • 依賴安裝:npm install 一鍵安裝項目所需模塊
  • 版本管理:通過 package.json 和 package-lock.json 管理依賴版本
  • 模塊發布:可將自己的代碼發布到 npm 倉庫(registry),供他人使用
  • 腳本系統:支持 npm run 執行構建、測試等命令,成為項目自動化的入口

只不過,最為最初的包管理工具,npm 一開始(當然也包括現在)也存在非常多的問題,比如說:安裝慢、node_modules 過大、依賴庫版本鎖定不一致 等等的問題。

雖然,npm 在 v5 之后,進行了大量的優化,但是很多問題依然存在。比如,很多同學都問過我的這個報錯(使用 cnpm 安裝即可解決):

圖片

同時也是因為這些問題,所以才出現了后續的 yarn、pnpm、cnpm 等

yarn:為解決 npm 的問題而來

2016 年,Facebook 等大廠聯合推出了一個全新的包管理器 —— Yarn,它的誕生不是為了顛覆什么,而是為了解決當時 npm 的諸多“痛點”。

在那個 npm install 慢如蝸牛、依賴版本時常出錯的年代,Yarn 就像是完成了一次大的技術升級,把整個包管理的流程都做了優化。

  • yarn.lock 文件:引入了自己的鎖文件(區別于 npm 的 package-lock.json),更早解決了依賴版本不一致的問題
  • 更快的安裝體驗:Yarn 通過緩存機制和并行安裝方式,大大提升了安裝速度。裝過一次的包,下次無需重新拉。
  • 離線安裝:這是一個非常實用的特性,即使斷網,你也可以依賴緩存離線安裝項目,適合對網絡依賴敏感的開發場景。
  • 原子化安裝:安裝失敗會自動回滾,防止項目進入“半安裝”狀態。

目前,Yarn 的最新版本為 V2 代號:Berry(2020 年 1 月發布),在這個版本中 Yarn 將架構進行了重新,提供了一個叫做 Plug'n'Play (PnP) 的概念。這種方式會 跳過 node_modules,依賴通過 .pnp.cjs 文件直接映射,但是對于已經習慣了 node_modules 的前端開發者來說,就有點不太友好了。

pnpm:解決硬盤空間不足的問題

我們項目中所有的包都會被安裝到 node_modules 中,這就導致 node_modules 會變得非常大!有多大呢?大家可以看下自己項目中的 node_modules 大小,你會發現它的體積可能會比你的代碼體積大了 100 倍以上。當時還出現了一個這樣的表情圖:

因此,pnpm 就出現了。其核心就是為了解決 node_modules 占用硬盤空間過大的問題

圖片

pnpm 通過一種“硬鏈接 + 內容尋址”的存儲方式,將所有依賴包統一下載到全局緩存中(.pnpm-store),每個項目的 node_modules 并不真的“安裝”包,而是使用軟鏈接指向緩存中的真實文件,同一個包只會下載、存儲一份,再多個項目共用。

這樣就帶來了巨多好處,比如:下載速度飛快,空間占用大幅度下降,并且還可以完美兼容現有生態(保留 node_modules)。

并且,針對 Monorepo 架構,pnpm 也提供了非常好的支持(應該可以說是支持最好的包管理器了)

cnpm:國內的淘寶鏡像

cnpm 和前面所有的包管理工具不太一樣,嚴格來說 cnpm 不應該被叫做包管理工具,而應該被叫做一個 cli 工具。

因為,npm 的官方源服務器在國外,所以,我們在使用 npm install 時常常遇到下載失敗的問題。

那么為了解決下載失敗的問題,阿里巴巴就維護了一套 npm 的鏡像源,每間隔幾分鐘就會自動同步 npm 的數據,從而保證數據與 npm 一直,就好像是 npm 的鏡子一樣。那么在我們就可以直接從國內阿里的鏡像源來安裝依賴了。

所以,cnpm 的正確的概念應該是 cnpm = npm 的國內鏡像 + 一套 CLI 工具。

責任編輯:武曉燕 來源: 程序員Sunday
相關推薦

2025-03-25 08:50:00

2025-03-24 00:00:15

2015-12-23 11:32:50

2022-09-16 22:23:35

pnpmCLI軟件

2018-05-14 11:31:02

2018-05-14 17:36:59

2009-04-23 08:31:23

微軟鮑爾默收購

2021-11-29 12:11:09

npm包管理器工具

2022-02-25 14:19:56

依賴管理前端命令

2021-12-17 07:30:42

排序算法效率

2023-11-07 12:56:35

Redis主從復制

2024-06-20 08:06:04

2025-10-20 08:17:01

2022-02-28 10:22:08

前端管理工具

2025-07-07 06:21:46

2021-03-01 07:59:24

架構系統Zachman

2024-05-10 08:41:05

NPMYarn

2022-02-21 09:58:31

包管理器npmyarn

2022-11-25 07:59:43

JavaIOGuava

2022-08-03 00:04:29

pnpmyarnnpm
點贊
收藏

51CTO技術棧公眾號

亚洲不卡1区| 亚欧精品一区| 成人不卡视频| 欧美午夜片在线免费观看| 亚洲综合欧美日韩| 日韩成人a**站| 中文字幕v亚洲ⅴv天堂| 毛片免费在线| 亚洲欧美自拍偷拍| 欧美aaa在线观看| 国产精品videosex极品| 97视频在线观看免费| 大桥未久在线播放| 欧美日韩人人澡狠狠躁视频| av观看免费在线| 捆绑紧缚一区二区三区视频| 亚洲综合日韩中文字幕v在线| 久久综合给合| 在线视频免费一区二区| 日韩电影免费观看| 91福利精品视频| 精产国产伦理一二三区| 2017欧美狠狠色| 亚洲欧洲日韩精品| 亚洲国产综合在线看不卡| 日本一区二区三区四区视频| 国产综合色在线观看| 亚洲第一精品久久忘忧草社区| 成人在线观看黄色| 亚洲18女电影在线观看| 国产激情三区| 国产欧美视频一区二区| 欧美视频免费看欧美视频| 久久超碰97人人做人人爱| 欧美高清一区二区| 99精品99| 久久久久久九九九九| 欧美色综合网| 国产精品视频免费观看| 国产精品vip| 国产精品视频福利| 一本色道久久综合| 国产另类自拍| 亚洲精品免费观看| 蜜桃视频在线观看成人| 亚洲黄色三级| 久久青青草原| 免费成人在线观看视频| 一区二区三区不卡在线| 久久超碰97人人做人人爱| 中文精品一区二区三区| 蜜桃视频在线观看一区二区| 国产精品波多野结衣| 国产精品18久久久久久久久 | 欧美老妇交乱视频| 精品三级久久久| 97精品国产97久久久久久春色 | 暖暖成人免费视频| 亚洲天堂影视av| 亚洲综合伊人| 国语自产精品视频在线看| 精品一区二区三| 国产亚洲欧美一区二区| 黑人精品欧美一区二区蜜桃| 北条麻妃在线观看| 国产精品传媒在线| 国产资源在线看| 精品久久久久久久久久久久久久久 | 久久精品99无色码中文字幕| 日本在线视频一区二区三区| 国内精品久久久久伊人av| 精品理论电影| 91麻豆蜜桃| 奇米四色…亚洲| 国产精品无码免费专区午夜| 久久久久久一级片| 国外男同性恋在线看| 欧美日韩一区高清| 欧美男人天堂| 欧美福利视频在线| 青青草国产成人a∨下载安卓| 国产一区在线免费| 黄色小说综合网站| www99热| 欧美日韩国产综合视频在线观看 | 欧美在线1区| 精品人伦一区二区三区| 蜜桃视频第一区免费观看| 日本韩国欧美在线观看| 一区二区在线观看av| 操你啦在线视频| 久久人人爽人人爽人人片亚洲 | 制服丝袜日韩国产| 影视一区二区三区| 国产成人在线一区二区| 日本怡春院一区二区| 日韩av在线综合| 欧美亚洲一区三区| 青草综合视频| av资源一区二区| 不卡一区二区中文字幕| 性感av在线播放| 亚洲深夜福利网站| 久久在线视频| 黄色成人在线免费观看| 亚州成人在线电影| 欧美free嫩15| 粉嫩av一区二区三区免费观看 | 大胆av不用播放器在线播放 | 欧美日韩国产免费| 精品自拍视频| 51成人做爰www免费看网站| 国产成人综合在线播放| 中文字幕在线免费专区| 亚洲一区www| 欧美精品二区| 999香蕉视频| 欧美xxx久久| 日韩在线理论| 日本精品一区二区三区四区| 欧美一级视频精品观看| 亚洲综合福利| 国产一区二区三区小说| 欧美视频中文字幕| 爽爽窝窝午夜精品一区二区| 亚洲黄色网址在线观看| 欧美在线免费播放| 亚洲品质自拍| 女人和拘做爰正片视频| 日韩亚洲欧美成人一区| 日产午夜精品一线二线三线| 美女av免费观看| 日韩一区二区在线看| 国产韩国精品一区二区三区| 黄色免费网址大全| 亚洲精品自在久久| 9久re热视频在线精品| 橘梨纱av一区二区三区在线观看| 日韩av在线免费播放| 亚洲激情影院| 亚洲成人av在线影院| 91精品国产91久久久久| 国产麻豆精品久久一二三| 精品国产99久久久久久| 成人在线视频网站| 亚洲激情第一区| 好吊妞国产欧美日韩免费观看网站| 无码日本精品xxxxxxxxx| 精品久久久三级丝袜| 黄色成人精品网站| 动漫成人在线观看| 国产精品久久97| 自拍偷拍国产精品| 国产96在线亚洲| 日韩免费高清在线| 久久人人爽亚洲精品天堂| 国产精品资源在线看| 天堂av中文在线观看| 午夜视频久久久| 精品久久久久久亚洲综合网| 久久精选视频| 中文字幕有码在线视频| 蜜桃导航-精品导航| 欧美日本一道本在线视频| 天天做天天爱天天综合网2021| 一级特黄特色的免费大片| 日本午夜在线亚洲.国产| 亚洲私人影院在线观看| 日韩人体视频| 男女激情网站| 成人美女免费网站视频| 欧美日韩精品国产| 激情一区二区| 污视频在线看网站| 色播亚洲婷婷| 亚洲三级黄色在线观看| caoporn国产精品| 亚洲码欧美码一区二区三区| 一区二区三区韩国| 欧美亚洲另类在线| 五月激情六月综合| 影音国产精品| 黄色在线免费观看网站| 国产玉足脚交久久欧美| 色综合久久天天综线观看| 亚洲欧美一区二区久久| 欧美三级三级| 91这里只有精品| 亚洲成色最大综合在线| 国产亚洲一级高清| 1024成人网| 欧美精品一区二区三区久久久竹菊| 性网站在线观看| 91黄色在线看| 日韩美女免费线视频| 欧美午夜电影网| 国产91精品入口| 日韩电影不卡一区| 国产精品刘玥久久一区| 久久久噜噜噜www成人网|