疑難排解
處理不匹配的套件版本
隨著單一儲存庫的擴充,您可能會在不同的工作空間中遇到不同版本的套件。
例如,app
可能使用 react@18.0.0
,但 web
可能使用 react@17.0.0
。當您剛剛 從多個儲存庫設定中移轉 時,尤其如此。
不同儲存庫中的依賴項不匹配,可能導致程式碼意外執行。例如,如果安裝的版本超過一個,React 會產生錯誤。
@manypkg/cli
我們建議使用 @manypkg/cli
(在新分頁中開啟) 來處理此問題,這是一個 CLI,可確保您的相依性在所有儲存庫中相符。
以下是一個快速範例。在 package.json
的根目錄中,新增一個 postinstall
腳本。
{
"scripts": {
// This will check your dependencies match
// after each installation
"postinstall": "manypkg check"
},
"dependencies": {
// Make sure you install @manypkg/cli
"@manypkg/cli": "latest"
}
}
您也可以執行 manypkg fix
來自動更新整個儲存庫中的相依性。