日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

npm install運行原理分析

作者:賣菜的小白 更新時間: 2022-04-19 編程語言

一、寫在前面
我們經常使用npm install ,但是你是否思考過它內部的原理是什么?

1、執行npm install 它背后幫助我們完成了什么操作?
2、我們會發現還有一個成為package-lock.json的文件,他的作用是什么?
3、從npm5開始,npm支持緩存策略(來自yarn的壓力),緩存有什么作用?

二、具體解析
在這里插入圖片描述
如上圖所示npm install 原理圖解析
npm install會檢測是否存在package-lock.json文件:
一、沒有lock文件
1.1、分析依賴關系,這是因為我們包會依賴其他的包,并且會多個包之間產生相同的依賴的關系。
1.2、registry倉庫中下載壓縮包(如果我們設置了鏡像,那么會從鏡像服務器下載壓縮包)。
1.3、 獲取到壓縮包后會對壓縮包進行緩存(從npm5開始有的)。
1.4、將壓縮包解壓到項目的node_modules文件夾中(前面我們講過,require的查找順序會在該包下面查找)。
二、有lock文件
2.1、檢測lock中包的版本是否和package.json中一致(會按照semver版本規范檢測)。
2.2、不一致,那么會重新構建依賴關系,直接會走頂層的流程。
2.3、一致的情況下,會去優先查找緩存。
2.4、沒有找到,會從registry倉庫下載,直接走頂層流程。
2.5、查找到,會獲取緩存中的壓縮文件,并且將壓縮文件解壓到node_modules文件夾中。

原文鏈接:https://blog.csdn.net/weixin_47450807/article/details/124233169

欄目分類
最近更新