Yarn是一個JavaScript套件管理器,是npm的直接競爭對手之一,同時也是Facebook的開源項目之一。
Yarn介紹
Yarn是一個JavaScript套件管理器,是npm的直接競爭對手,也是Facebook的開源項目之一。
它與npm套件相容,因此它有一個重要的優勢,可以無縫取代npm。
在剛發布時,它由於並行下載和緩存,速度比npm快得多,但現在npm已經追趕上它的許多功能,所以我推薦使用npm。
工具最終會收斂到一組功能,以保持它們在相同水平上,以保持相關性,因此我們可能會在未來的npm中看到這些功能 - 競爭對象對用戶來說是好的。
安裝Yarn
雖然你可以使用npm安裝Yarn(npm install -g yarn
),但Yarn團隊不建議這樣做。
系統特定的安裝方法在https://yarnpkg.com/en/docs/install列出。例如,在macOS上,你可以使用Homebrew運行以下命令:
brew install yarn
但每個操作系統都有自己首選的包管理器,這將使安裝過程非常順暢。
最終,您將在您的shell中可以使用yarn
命令:
管理套件
Yarn將其依賴項寫入名為package.json
的文件中,該文件位於您的項目的根文件夾中,並將依賴項文件存儲到node_modules
文件夾中,就像過去使用npm一樣。
初始化新項目
運行
yarn init
將啟動一個交互式提示,幫助您快速啟動一個項目。
安裝現有項目的依賴項
如果您已經有一個包含依賴項列表的package.json
文件,但是尚未安裝套件,運行以下命令:
yarn
或者
yarn install
開始安裝過程。
本地安裝套件
使用以下命令將套件安裝到項目中:
yarn add package-name
全局安裝套件
yarn global add package-name
本地安裝開發依賴項
yarn add --dev package-name
相當於npm的--save-dev
標誌
移除套件
yarn remove package-name
檢查許可證
在安裝許多依賴項時,這些依賴項可能還有很多依賴項,您會安裝許多您對其使用的許可證一無所知的套件。
Yarn提供了一個便利的工具,可以打印出您所有依賴項的許可證:
yarn licenses ls
它還可以自動生成一個免責聲明,其中包含您使用的所有項目的所有許可證:
yarn licenses generate-disclaimer
檢查依賴項
您是否曾經檢查node_modules
文件夾,想知道為什麼安裝了特定的套件?yarn why
可以告訴您:
yarn why package-name
升級套件
如果你想升級單個套件,運行以下命令:
yarn upgrade package-name
升級所有套件,運行以下命令:
yarn upgrade
但是,這個命令有時可能會導致問題,因為在不考慮主要版本更改的情況下盲目升級所有依賴項。
Yarn有一個很棒的工具,可以在項目中選擇性地更新套件,在這種情況下非常有幫助:
yarn upgrade-interactive
如何升級Yarn
在撰寫本文時,還沒有自動更新命令。
如果您使用了像上面建議的brew安裝,使用以下命令:
brew upgrade yarn
如果您使用npm安裝,使用以下命令:
npm uninstall yarn -g
npm install yarn -g