国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Pnpm,npm,yarn

這篇具有很好參考價(jià)值的文章主要介紹了Pnpm,npm,yarn。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

npm

? 最初的npm只是簡(jiǎn)單的通過(guò)依賴去遞歸安裝包,所以說(shuō)每個(gè)依賴都會(huì)有自己的node_modules,node_modules是嵌套的。一個(gè)項(xiàng)目會(huì)存在多個(gè)包,多個(gè)包之間難免會(huì)有公共的依賴,node_modules嵌套的話,這樣公共依賴就會(huì)下載多次。會(huì)造成磁盤空間的浪費(fèi),較長(zhǎng)的下載時(shí)間,文件路徑過(guò)長(zhǎng)(windows文件路徑最長(zhǎng)是260多個(gè)字符,嵌套可能會(huì)超過(guò)其長(zhǎng)度限制)

對(duì)于上述的缺點(diǎn),在后面的版本效仿yarn的方式進(jìn)行了解決

優(yōu)點(diǎn):官方支持;社區(qū)龐大;

Yarn

Yarn通過(guò)扁平化node_modules(同一個(gè)包,不同版本還是會(huì)嵌套下載。一個(gè)包是有多個(gè)版本的,只能提升一個(gè)),解決了公共依賴重復(fù)下載和文件路徑過(guò)長(zhǎng)的問(wèn)題。還實(shí)現(xiàn)了yarn.lock來(lái)鎖定版本。版本提升會(huì)照成幽靈依賴(是 項(xiàng)目里使用了,但是未在項(xiàng)目的package.json 中定義的包)

優(yōu)點(diǎn):并行下載,安裝速度快;會(huì)緩存包,將包進(jìn)行全局安裝,所以支持離線模式,從全局安裝的包里面深拷貝到當(dāng)前項(xiàng)目;(區(qū)別于新的npm)

pnpm

當(dāng)使用 npm 或者yarn時(shí),如果你有 100 個(gè)項(xiàng)目,并且所有項(xiàng)目都有一個(gè)相同的依賴包,那么, 你在硬盤上就需要保存 100 份該相同依賴包的副本(yarn,拷貝了緩存的包)。如果是使用 pnpm,依賴包將被 存放在一個(gè)統(tǒng)一的位置(全局安裝),如果你對(duì)同一依賴包需要使用不同的版本,則僅有 版本之間不同的文件會(huì)被存儲(chǔ)起來(lái)。

? 扁平化的node_modules存在三個(gè)個(gè)問(wèn)題: 模塊可以訪問(wèn)它們不依賴的包;展開依賴關(guān)系樹算法是相當(dāng)復(fù)雜的;對(duì)于包的不同版本,只能提升一個(gè),還是會(huì)存在嵌套的node_modules;

pnpm對(duì)于包是全局安裝,每個(gè)項(xiàng)目的?node_modules?通過(guò)鏈接的形式將包鏈接到資源倉(cāng)庫(kù)中,這樣不僅節(jié)省了空間,同時(shí)也加快了安裝速度。

pnpm最大的優(yōu)點(diǎn)就是保留了非扁平化的node_modules?文件夾,通過(guò)鏈接指向包資源的存儲(chǔ)地。

ppm add axios,在node_modules下存在一個(gè).pnpm的包,是硬連接指向包的磁盤地址;node_modules第一層還有一個(gè)axios,他里面也有node_modules,是軟連接,指向.pnpm(硬連接就是同一個(gè)文件的不同引用,而軟鏈接是新建一個(gè)文件,文件內(nèi)容指向另一個(gè)路徑)ps:路徑過(guò)長(zhǎng)的限制本質(zhì)上是不能有太深的目錄層級(jí),現(xiàn)在都是各個(gè)位置的目錄的 link,并不是同一個(gè)目錄,所以也不會(huì)有長(zhǎng)度限制

使用鏈接的指向,替代了yarn的復(fù)制,npm的下載,明顯速度快了很多也更加節(jié)省了磁盤空間;同時(shí)也存在一個(gè)問(wèn)題,如果你在一個(gè)項(xiàng)目?jī)?nèi)修改了一個(gè)包,那么其他依賴這個(gè)包的項(xiàng)目也會(huì)收到影響;文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-697755.html

到了這里,關(guān)于Pnpm,npm,yarn的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • npm、yarn、pnpm

    一、簡(jiǎn)介 CommonJS 的出現(xiàn),使 node 環(huán)境下的 JS 代碼可以用模塊更加細(xì)粒度的劃分。一個(gè)類、一個(gè)函數(shù)、一個(gè)對(duì)象、一個(gè)配置等等均可以作為模塊,這種細(xì)粒度的劃分,是開發(fā)大型應(yīng)用的基石。 為了解決在開發(fā)過(guò)程中遇到的常見問(wèn)題,比如加密、提供常見的工具方法、模擬數(shù)據(jù)

    2024年02月10日
    瀏覽(42)
  • Pnpm,npm,yarn

    npm ? 最初的npm只是簡(jiǎn)單的通過(guò)依賴去遞歸安裝包,所以說(shuō)每個(gè)依賴都會(huì)有自己的node_modules,node_modules是嵌套的。一個(gè)項(xiàng)目會(huì)存在多個(gè)包,多個(gè)包之間難免會(huì)有公共的依賴,node_modules嵌套的話,這樣公共依賴就會(huì)下載多次。會(huì)造成磁盤空間的浪費(fèi),較長(zhǎng)的下載時(shí)間,文件路徑過(guò)

    2024年02月09日
    瀏覽(35)
  • npm、yarn和pnpm

    npm、yarn和pnpm

    在npm@3之前是以嵌套結(jié)構(gòu)方式安裝依賴包,存在兩個(gè)問(wèn)題: 依賴路徑太長(zhǎng) 多個(gè)包依賴一個(gè)相同包時(shí),本地磁盤會(huì)存儲(chǔ)多個(gè)相同的包 npm@ 3和 yarn 使用扁平化結(jié)構(gòu),node_modules變成所有包放在同一層級(jí) 注意 :多個(gè)版本的包只有一個(gè)會(huì)被提升至頂層,其他版本的包會(huì)嵌套安裝到各自

    2024年02月11日
    瀏覽(35)
  • npm、yarn與pnpm詳解

    npm、yarn與pnpm詳解

    ?? 簡(jiǎn)介 : npm 是隨 Node.js 一起安裝的官方包管理工具,它為開發(fā)者搭建了一個(gè)龐大的資源庫(kù),允許他們?cè)谶@個(gè)平臺(tái)上搜索、安裝和管理項(xiàng)目所必需的各種代碼庫(kù)或模塊。 ?? 常用命令 : npm install :安裝package.json中聲明的所有依賴項(xiàng)。 npm install package-name :安裝指定名稱的包

    2024年04月25日
    瀏覽(27)
  • pnpm、npm、yarn的區(qū)別

    pnpm、npm、yarn是三種不同的包管理器,它們之間有一些區(qū)別。 安裝速度:pnpm的安裝速度比npm和yarn快,因?yàn)樗褂昧酥幌螺d必需的模塊,而不是下載整個(gè)依賴樹。此外,pnpm還可以并行下載模塊,從而進(jìn)一步提高下載速度。 占用空間:pnpm的占用空間比npm和yarn小,因?yàn)樗幌螺d

    2024年02月08日
    瀏覽(25)
  • npm yarn pnpm 命令集

    安裝依賴 安裝某個(gè)依賴 安裝到全局(dependencies) 安裝到線下(devDependencies) 卸載某個(gè)依賴 卸載全局依賴 清除npm緩存 如果清除緩存報(bào)禁止--force錯(cuò)誤 可以使用以下這條 安裝pnpm 打開CMD命令行 輸入 查看版本號(hào) 安裝依賴 安裝某個(gè)依賴 刪除某個(gè)依賴 更新所有依賴 更新某個(gè)依賴

    2024年02月12日
    瀏覽(43)
  • npm、yarn、pnpm如何清除緩存?

    npm、yarn、pnpm如何清除緩存?

    前端工程化創(chuàng)建項(xiàng)目會(huì)經(jīng)常使用各種安裝包管理工具,安裝各種前端依賴包。例如,npm、yarn、pnpm等。時(shí)間一長(zhǎng),各種安裝包管理工具的在安裝依賴時(shí),留下的緩存文件就會(huì)變得很大,以至于影響系統(tǒng)的運(yùn)行,因此必要時(shí)清除緩存就是一個(gè)不錯(cuò)的選擇。本文將著重介紹npm、y

    2024年02月07日
    瀏覽(28)
  • npm, yarn和pnpm清理緩存

    npm, yarn和pnpm是時(shí)下主流的node.js包管理器。 隨著前端項(xiàng)目的增多,會(huì)下載許多的依賴。不管是哪種包管理器,都會(huì)使用緩存來(lái)增加下次下載的速度。但很多情況下緩存文件不會(huì)被自動(dòng)清空,如果不手動(dòng)清理,可能會(huì)占用非常多系統(tǒng)盤的存儲(chǔ)空間。 為此,本文記錄了三種包管理

    2024年01月20日
    瀏覽(29)
  • “yarn“、“npm“、“cnpm“和“pnpm“的區(qū)別

    npm(Node Package Manager)是Node.js的默認(rèn)包管理器。它是一個(gè)全球最大的開源軟件注冊(cè)表,擁有數(shù)量龐大的包供開發(fā)者使用。npm具有廣泛的生態(tài)系統(tǒng)和大量的社區(qū)支持。 軟件包數(shù)量龐大,幾乎包含了所有常見的開源庫(kù)和工具。 社區(qū)活躍,有大量的文檔、教程和支持。 可以方便地

    2024年02月11日
    瀏覽(38)
  • 【JavaScript】npm、Yarn 和 pnpm 的區(qū)別

    npm、Yarn 和 pnpm 都是用于管理和構(gòu)建 JavaScript 項(xiàng)目的包管理工具,以下是它們之間的一些區(qū)別和特點(diǎn)。 npm(Node Package Manager): npm 是 Node.js 官方提供的包管理工具,是 JavaScript 生態(tài)系統(tǒng)中使用最廣泛的包管理工具之一。 npm 使用 package.json 文件來(lái)記錄項(xiàng)目的依賴關(guān)系和配置信

    2024年02月16日
    瀏覽(23)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包