Nx 專案中的資料夾結構
這邊快速的使用 Nx 官方文件的範例來做舉例
一個 Nx 專案大致上會有以下資料夾
my-nx-project/
├── apps/
├── libs/
├── tools/
├── workspace.json
├── nx.json
├── package.json
└── tsconfig.base.json
- my-nx-project/ 為自己的大型 Nx 專案名稱
- /apps/ 會存放各種專案,也是所有專案中主要的進入點。會建議所有此資料夾中的專案應該要越輕量越好,反之檔案比較大的程式且可重複利用的程式碼應該要放在 Libraries 之中,並且在各個專案中進行載入
- /libs/ 會包含所有的 library 專案。以我自己工作為例,我們會將一些常見的功能模組化並且存放於此,例如:PWA
- /tools/ 會包含一些常使用的程式碼腳本,也可以將參數放置於此資料夾。例如:資料庫的設定與腳本
- /workspace.json 會列出在你這個大型 Nx 專案中的所有小型專案
- /nx.json 會根據 Nx CLI 去做配置,也會透過此檔案告知 Nx 有哪些需要進行快取,或是如何執行
- /tsconfig.base.json 設定全域 TypeScript,並且在每個 library 之中建立別名(aliases),協助不管是 TypeScript 或是 JavaScript 的載入
為何大公司都使用 Nx ? Monorepo 工具五分鐘快速建置|方格子 vocus
Nx 環境設定介紹