溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何使用yarn代替npm管理前端項(xiàng)目模塊依賴(lài)

發(fā)布時(shí)間:2021-07-26 09:25:21 來(lái)源:億速云 閱讀:774 作者:小新 欄目:web開(kāi)發(fā)

這篇文章將為大家詳細(xì)講解有關(guān)如何使用yarn代替npm管理前端項(xiàng)目模塊依賴(lài),小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

什么是 yarn?

簡(jiǎn)單來(lái)說(shuō),yarn 是一個(gè)與 npm 功能相同的工具,用于前端項(xiàng)目的依賴(lài)管理。在使用 npm 的項(xiàng)目中,使用 npm 命令的地方都可以使用 yran 來(lái)代替。

為什么要使用 yarn 替代 npm 呢?yarn 相對(duì) npm 來(lái)說(shuō),主要的特點(diǎn)有:

  • 離線、并行安裝:依賴(lài)并行安裝,緩存已下載過(guò)的依賴(lài)并優(yōu)先使用,各種優(yōu)化使得安裝依賴(lài)速度顯著提升

  • 確定性:默認(rèn)生成 yarn.lock 文件,可以保證各開(kāi)發(fā)人員開(kāi)發(fā)安裝依賴(lài)的目錄具有一致性

  • more…

好吧,其實(shí) npm 也在不斷的優(yōu)化改進(jìn)中。但 yarn 確實(shí)有很多亮點(diǎn),至少當(dāng)前是非常值得你去使用的。

yarn 使用快速上手

安裝

雖然安裝 yarn 可以不依賴(lài) npm,但這里還是建議你使用 npm 來(lái)安裝吧,快速而簡(jiǎn)潔:

npm i -g yarn

在項(xiàng)目中使用

首次初始化項(xiàng)目時(shí)執(zhí)行,在每次項(xiàng)目啟動(dòng)/構(gòu)建之前,也都應(yīng)執(zhí)行一次,以保證本地依賴(lài)得到及時(shí)更新。

該命令會(huì)檢查 package.json 和 yarn.lock 文件中的依賴(lài),當(dāng)有其內(nèi)容更新,會(huì)進(jìn)行依賴(lài)更新安裝。

yarn <install>

依賴(lài)更新。當(dāng)你希望更新依賴(lài)模塊到其最新版本時(shí)執(zhí)行該命令。

yarn upgrade

yarn 常用命令

開(kāi)始新項(xiàng)目

yarn init

添加依賴(lài)包

yarn add [package]
yarn add [package]@[version]
yarn add [package]@[tag]

升級(jí)依賴(lài)包

yarn upgrade [package]
yarn upgrade [package]@[version]
yarn upgrade [package]@[tag]

移除依賴(lài)包

yarn remove [package]

安裝項(xiàng)目的全部依賴(lài)

yarn

或者

yarn install

yarn 使用實(shí)踐建議

我們選擇 yarn 的主要原因是依賴(lài)安裝速度快,默認(rèn)生成的 yarn.lock 會(huì)保證所有成員的模塊依賴(lài)目錄能夠很好的保持一致。

yarn install 和 yarn upgrade 的執(zhí)行邏輯,可以讓你可以很清晰的管理本地依賴(lài)的版本更新時(shí)機(jī),又能很好的讓所有開(kāi)發(fā)人員的本地依賴(lài)保持一致性。

使用 npm install 則有些亂,當(dāng)你不想寫(xiě)死版本號(hào)依賴(lài)時(shí),它總會(huì)安裝依賴(lài)包最新可用的版本,但這在有時(shí)候并不是你想要的。

在 yarn 之前,我們使用的是 npm+淘寶倉(cāng)庫(kù)方案,也會(huì)使用 cnpm。在國(guó)內(nèi),cnpm 的依賴(lài)安裝速度比 yarn 還要快,但 cnpm 在 windows 下通過(guò)創(chuàng)建鏈接引用的方式管理包依賴(lài),可能會(huì)帶來(lái)一些問(wèn)題。

現(xiàn)在我們會(huì)默認(rèn)使用淘寶倉(cāng)庫(kù),使用 npm 管理全局依賴(lài),使用 yarn 管理具體項(xiàng)目?jī)?nèi)的依賴(lài)。

在一個(gè)新的項(xiàng)目中使用 yarn,我們會(huì)這么來(lái)做:

  • 寫(xiě)好 package.json,寫(xiě)入初始的第三方依賴(lài)

  • 執(zhí)行 yarn 命令,初始化安裝項(xiàng)目依賴(lài),生成 yarn.lock 文件

  • 后續(xù)通過(guò)執(zhí)行 yarn add xxx 添加更多需要的依賴(lài)(也可直接在 package.json 文件中寫(xiě)入)

  • 當(dāng)確定需要更新依賴(lài)模塊到其最新版本時(shí),執(zhí)行 yarn upgrade 命令

  • 配置項(xiàng)目啟動(dòng)命令執(zhí)行前,先執(zhí)行 yarn 命令,以保證當(dāng) yarn.lock 被更新時(shí),本地依賴(lài)也及時(shí)得到更新。例如,在 package.json 的 script 部分中配置 start 命令: "start": "yarn && yarn run build:dev"

關(guān)于“如何使用yarn代替npm管理前端項(xiàng)目模塊依賴(lài)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI