本節咱們學習 Yarn 工做區,什麼是工做區呢? 工做區是設置軟件包體系結構的一種新方式,默認狀況下從 Yarn 1.0 開始使用。咱們能夠使用這種方式安裝多個軟件包, 也就是隻須要執行一次 yarn install 命令即可以將全部依賴包所有安裝。node
在 package.json 文件中添加如下內容,接下來咱們將此目錄稱爲 「工做區根目錄」:json
{ "private": true, "workspaces": ["workspace-a", "workspace-b] }
其中 private:true 是必填項,工做區並非要發佈的,由於添加了此安全措施來確保沒有任何東西能夠意外地暴露它們。安全
建立這個文件以後,咱們須要在建立兩個新的子文件夾:workspace-a 和 workspace-b。在每一個文件夾裏面,建立一個具備如下內容的 package. json 文件:學習
workspace-a/package.json:測試
{ "name": "workspace-a", "version": "1.0.0", "dependencies": { "cross-env": "5.0.5" } }
workspace-b/package.json:spa
{ "name": "workspace-b", "version": "1.0.0", "dependencies": { "cross-env": "5.0.5", "workspace-a": "1.0.0" } }
最後能夠在工做區根目錄中執行 yarn install 命令,若是一切正常,如今應該有一個相似下面這樣的文件層次結構:code
/package.json /yarn.lock /node_modules /node_modules/cross-env /node_modules/workspace-a -> /workspace-a /workspace-a/package.json /workspace-b/package.json
workspace-b 須要一個在 workspace-a 中的文件,如今將直接使用當前項目內部的文件,而不是從 Github 上面獲取。cross-env 包已正確去重並放在項目的根目錄下,讓 workspace-a 和 workspace-b能夠一塊兒使用這個包。ci
連接:https://www.9xkd.com/get