41
Re:Nuxt 100 天練習曲
Day 41
給 Nuxt 的忽略清單 (.nuxtignore)
Day 41·Build Ignore·Project Management
昨天我們學習了給 Git 用的 .gitignore
,它用來告訴 Git 哪些檔案「不必打包進版本庫」。而 .nuxtignore
則是給 Nuxt 用的忽略清單,它告訴 Nuxt 哪些檔案在「建置 (build) 專案時不必處理」。
1. 關鍵區別:`.gitignore` vs. `.nuxtignore`
讓我們用電影製作來比喻,您就能立刻明白:
.gitignore (給製片公司 Git 看的)
作用:
告訴 Git 哪些東西不要放進最終的電影拷貝裡。
例子:
導演的私人筆記 (.env
)、拍攝現場的臨時道具 (node_modules
)。
.nuxtignore (給導演 Nuxt 看的)
作用:
告訴 Nuxt 哪些場景 (檔案) 雖然拍了,但在最終剪輯 (build) 時請忽略它們,不要剪進電影正片裡。
例子:
一個還沒完成、不想發布的頁面或元件。
對照表:
檔案 | 作用對象 | 作用階段 |
---|---|---|
.gitignore | Git | 版本控制時忽略 |
.nuxtignore | Nuxt | 建置 (build) 時忽略 |
2. 使用時機
什麼時候會需要告訴 Nuxt 忽略一個檔案呢?
草稿或備份檔案
您可能在 components/
資料夾裡留了一個舊版的備份元件,例如 components/Card-old.vue
。您不希望 Nuxt 把它當作一個真正的元件來處理。
暫時禁用功能
您可能正在開發一個新的頁面 (pages/new-feature.vue
),但它還沒完成,您不希望它在這次的建置中被包含進去。
3. 如何使用
在專案根目錄建立 .nuxtignore
檔案。它的語法和 .gitignore
完全一樣,每一行都是一個檔案路徑或匹配模式。
.nuxtignore
# .nuxtignore
# 忽略這個特定的版型檔案
layouts/dark-theme.vue
# 忽略 pages/drafts/ 資料夾下的所有頁面
pages/drafts/*.vue
# 忽略除了 special.ts 以外,所有在 middleware/temp/ 的中介軟體
middleware/temp/*.ts
!middleware/temp/special.ts
模式說明:
layouts/dark-theme.vue
→ 忽略特定檔案pages/drafts/*.vue
→ 忽略資料夾下所有 .vue 檔案!middleware/temp/special.ts
→ 不要忽略這個特定檔案今日總結
今天我們學會了 .nuxtignore
,它是我們與 Nuxt 建置系統溝通的另一種方式。
它和 .gitignore
的區別:一個是給 Git 看的,一個是給 Nuxt 看的。
主要用於忽略草稿檔案、備份檔案或未完成的功能。
語法與 .gitignore
完全相同,支援萬用字元和排除規則。
影響建置過程,被忽略的檔案不會包含在最終的應用程式中。
實用建議
善用 .nuxtignore
可以讓您更靈活地控制哪些檔案需要被打包到您最終的應用程式中。