Skip to main content

Nx 專案中的資料夾結構

這邊快速的使用 Nx 官方文件的範例來做舉例

一個 Nx 專案大致上會有以下資料夾

my-nx-project/
├── apps/
├── libs/
├── tools/
├── workspace.json
├── nx.json
├── package.json
└── tsconfig.base.json
  1. my-nx-project/ 為自己的大型 Nx 專案名稱
  2. /apps/ 會存放各種專案,也是所有專案中主要的進入點。會建議所有此資料夾中的專案應該要越輕量越好,反之檔案比較大的程式且可重複利用的程式碼應該要放在 Libraries 之中,並且在各個專案中進行載入
  3. /libs/ 會包含所有的 library 專案。以我自己工作為例,我們會將一些常見的功能模組化並且存放於此,例如:PWA
  4. /tools/ 會包含一些常使用的程式碼腳本,也可以將參數放置於此資料夾。例如:資料庫的設定與腳本
  5. /workspace.json 會列出在你這個大型 Nx 專案中的所有小型專案
  6. /nx.json 會根據 Nx CLI 去做配置,也會透過此檔案告知 Nx 有哪些需要進行快取,或是如何執行
  7. /tsconfig.base.json 設定全域 TypeScript,並且在每個 library 之中建立別名(aliases),協助不管是 TypeScript 或是 JavaScript 的載入

為何大公司都使用 Nx ? Monorepo 工具五分鐘快速建置|方格子 vocus

Nx 環境設定介紹

[Angular] Nx 環境設定介紹

NX Workspace - HackMD