pnpm的安裝和使用指南(推薦!)
什么是pnpm
pnpm是 Node.js 的替代包管理器。它是 npm 的直接替代品,但速度更快、效率更高。
為什么效率更高?當(dāng)您安裝軟件包時(shí),我們會(huì)將其保存在您機(jī)器上的全局存儲(chǔ)中,然后我們會(huì)從中創(chuàng)建一個(gè)硬鏈接,而不是進(jìn)行復(fù)制。對(duì)于模塊的每個(gè)版本,磁盤上只保留一個(gè)副本。例如,當(dāng)使用 npm 或 yarn 時(shí),如果您有 100 個(gè)使用 lodash 的包,則磁盤上將有 100 個(gè) lodash 副本。
pnpm 可讓您節(jié)省數(shù) GB 的磁盤空間!
pnpm優(yōu)勢(shì)
pnpm 擁有 Yarn 超過 npm 的所有附加功能:
- 安全: 與 yarn 一樣,pnpm 有一個(gè)包含所有已安裝包校驗(yàn)和的特殊文件,用于在執(zhí)行代碼之前驗(yàn)證每個(gè)已安裝包的完整性。
- 離線模式: pnpm 將所有下載的包 tarball 保存在本地注冊(cè)表鏡像中。當(dāng)包在本地可用時(shí),它從不發(fā)出請(qǐng)求。使用該--offline參數(shù)可以完全禁止 HTTP 請(qǐng)求。
- 速度: pnpm 不僅比 npm 快,而且比 yarn 快。無論是冷緩存還是熱緩存,它都比 yarn 快。yarn 從緩存中復(fù)制文件,而 pnpm 只是從全局存儲(chǔ)中鏈接它們。
與 npm 的差別
與 npm 不同的是,pnpm 會(huì)校驗(yàn)所有的參數(shù)。 比如,pnpm install --foo 會(huì)執(zhí)行失敗,因?yàn)?--foo 不是 pnpm install 的有效參數(shù)。
但是,某些依賴關(guān)系可能使用 npm_config_ 環(huán)境變量,其中 從 CLI 選項(xiàng)中填充。 在這種情況下,你有以下選擇:
設(shè)置明確的環(huán)境變量:npm_config_foo=true pnpm install
用 --config.強(qiáng)制使用未知選項(xiàng): pnpm install --config.foo
pnpm使用
官網(wǎng): https://pnpm.js.org/installation/
全局安裝
npm install pnpm -g
設(shè)置源
//查看源 pnpm config get registry //切換淘寶源 pnpm config set registry https://registry.npmmirror.com/
使用
pnpm install 包 // pnpm i 包 pnpm add 包 // -S 默認(rèn)寫入dependencies pnpm add -D // -D devDependencies pnpm add -g // 全局安裝
移除
pnpm remove 包 //移除包 pnpm remove 包 --global //移除全局包
更新
pnpm up //更新所有依賴項(xiàng) pnpm upgrade 包 //更新包 pnpm upgrade 包 --global //更新全局包
設(shè)置存儲(chǔ)路徑
pnpm config set store-dir /path/to/.pnpm-store
個(gè)人使用
一些需要node-gyp的包一定要記得安裝好
在系統(tǒng)上禁止使用腳本解決方法
# 以管理員身份運(yùn)行power shell set-executionpolicy remotesigned
總結(jié)
到此這篇關(guān)于pnpm的安裝和使用的文章就介紹到這了,更多相關(guān)pnpm安裝和使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Node.js中如何合并兩個(gè)復(fù)雜對(duì)象詳解
下面這篇文章主要給大家介紹了在Node.js中如何合并兩個(gè)復(fù)雜對(duì)象的方法,文中給出了詳細(xì)的示例代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友可以參考,下面來一起看看吧。2016-12-12
基于nodejs使用express創(chuàng)建web服務(wù)器的操作步驟
express實(shí)際上是對(duì)nodejs內(nèi)置http進(jìn)行封裝后的第三方包,其中提供了快捷創(chuàng)建web服務(wù)器以及處理請(qǐng)求路由的方法,使我們可以更加方便快捷的實(shí)現(xiàn)一個(gè)web服務(wù)器項(xiàng)目,本文件給大家詳細(xì)介紹基于nodejs使用express?創(chuàng)建web服務(wù)器的操作步驟2023-07-07
切換到淘寶最新npm鏡像源的全面指南(支持 Windows、macOS 和多種 Linux
在開發(fā)過程中,npm 是前端開發(fā)者不可或缺的工具,但對(duì)于國(guó)內(nèi)的開發(fā)者來說,npm 官方源在下載速度上存在一定的瓶頸,本文將詳細(xì)介紹如何在 Windows、macOS 以及各類 Linux 發(fā)行版上切換到淘寶的 npm 鏡像源,需要的朋友可以參考下2025-03-03
Node.js操作MySQL8.0數(shù)據(jù)庫(kù)無法連接的問題解決
使用node.js連接數(shù)據(jù)庫(kù)MySQL 8時(shí)候,顯示報(bào)錯(cuò) ER_NOT_SUPPORTED_AUTH_MODE,本文就來介紹一下解決方法,感興趣的可以了解一下2023-10-10
Node.js中,在cmd界面,進(jìn)入退出Node.js運(yùn)行環(huán)境的方法
今天小編就為大家分享一篇Node.js中,在cmd界面,進(jìn)入退出Node.js運(yùn)行環(huán)境的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05
npm報(bào)錯(cuò)"A?complete?log?of?this?run?can?be?found?
這篇文章主要給大家介紹了關(guān)于npm報(bào)錯(cuò)"A?complete?log?of?this?run?can?be?found?in:"的解決辦法,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-04-04
koa2服務(wù)配置SSL的實(shí)現(xiàn)方法
這篇文章主要介紹了koa2服務(wù)配置SSL的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05
Node.js使用MongoDB的ObjectId作為查詢條件的方法
這篇文章主要介紹了Node.js使用MongoDB的ObjectId作為查詢條件的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09

