pnpm的安裝和使用指南(推薦!)
什么是pnpm
pnpm是 Node.js 的替代包管理器。它是 npm 的直接替代品,但速度更快、效率更高。
為什么效率更高?當(dāng)您安裝軟件包時(shí),我們會(huì)將其保存在您機(jī)器上的全局存儲(chǔ)中,然后我們會(huì)從中創(chuàng)建一個(gè)硬鏈接,而不是進(jìn)行復(fù)制。對(duì)于模塊的每個(gè)版本,磁盤(pán)上只保留一個(gè)副本。例如,當(dāng)使用 npm 或 yarn 時(shí),如果您有 100 個(gè)使用 lodash 的包,則磁盤(pán)上將有 100 個(gè) lodash 副本。
pnpm 可讓您節(jié)省數(shù) GB 的磁盤(pán)空間!
pnpm優(yōu)勢(shì)
pnpm 擁有 Yarn 超過(guò) 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 快。無(wú)論是冷緩存還是熱緩存,它都比 yarn 快。yarn 從緩存中復(fù)制文件,而 pnpm 只是從全局存儲(chǔ)中鏈接它們。
與 npm 的差別
與 npm 不同的是,pnpm 會(huì)校驗(yàn)所有的參數(shù)。 比如,pnpm install --foo 會(huì)執(zhí)行失敗,因?yàn)?--foo 不是 pnpm install 的有效參數(shù)。
但是,某些依賴(lài)關(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)寫(xiě)入dependencies pnpm add -D // -D devDependencies pnpm add -g // 全局安裝
移除
pnpm remove 包 //移除包 pnpm remove 包 --global //移除全局包
更新
pnpm up //更新所有依賴(lài)項(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(express)中使用Jcrop進(jìn)行圖片剪切上傳功能
最近在項(xiàng)目開(kāi)發(fā)中遇到了這樣的需求就是要實(shí)現(xiàn)用戶(hù)上傳頭像,并且要保存用戶(hù)裁切后的部分作為用戶(hù)頭像。下面給大家分享node.js(express)中使用Jcrop進(jìn)行圖片剪切上傳功能,需要的的朋友參考下吧2017-04-04node Buffer緩存區(qū)常見(jiàn)操作示例
這篇文章主要介紹了node Buffer緩存區(qū)常見(jiàn)操作,涉及node.js操作Buffer緩存的創(chuàng)建、寫(xiě)入、讀取、轉(zhuǎn)換等相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-05-05利用Mongoose讓JSON數(shù)據(jù)直接插入或更新到MongoDB
這篇文章主要給大家介紹了利用Mongoose讓JSON數(shù)據(jù)直接插入或更新到MongoDB數(shù)據(jù)庫(kù)的相關(guān)資料,文中詳細(xì)介紹了配置Mongoose、創(chuàng)建目錄及文件、插入數(shù)據(jù),POST提交JSON增加一條記錄以及詢(xún)數(shù)據(jù),取出剛增加的記錄等內(nèi)容,需要的朋友可以參考下。2017-05-05Node.js 實(shí)現(xiàn)搶票小工具 & 短信通知提醒功能
這篇文章主要介紹了Node.js 實(shí)現(xiàn)搶票小工具 & 短信通知提醒功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10