《NestJS 絕地求生手冊》整理一年來從 Angular 前端轉向 NestJS 後端開發時實際踩過的坑。系列將依問題發生階段,從 DI、Module、DTO 驗證、型別轉換、TypeORM,到 Interceptor、Exception Filter 與 Swagger,拆解 30 個常見但容易卡關的情境。這不是從零教學,而是一份面向實戰的排雷筆記,希望幫助開發者更快定位問題、理解 NestJS 的運作方式,少走一點冤枉路。
如果你曾經在趕著專案上線前的加班夜,為了一個出了錯卻找不到原因的問題,除錯超過一小時,或是明明在 Query 傳了 "false",進到程式...
在 NestJS 中,DI(Dependency Injection,依賴注入)是整個框架的核心機制,開發者只要在 constructor 寫一行 privat...
昨天我們靠著釐清 providers、exports 與 imports 找回了消失的 provider。但在剛接觸 NestJS 時,有些人可能會有一個直覺想...
當一個 provider 需要根據多個依賴動態建立時,useFactory 是 NestJS 常見的做法之一。這種寫法看似直觀,背後卻隱藏著一個容易被忽略的位置...
隨著專案開始需要透過環境變數管理資料庫設定,我們通常會結合 @nestjs/config 與 TypeORM 的 forRootAsync(),並注入 Conf...
在開發 NestJS 應用時,環境變數是抽離系統組態與機密資訊的常見做法。為了獲得良好的開發體驗與型別提示,我們常使用官方提供的 ConfigService,並...
隨著專案規模逐漸變大,模組與服務之間的交互會越來越頻繁。有時候,我們不知不覺中就會創造出一個「雞生蛋、蛋生雞」的窘境。 今天,我們就要來面對 NestJS 開發...
在 NestJS 中,慢查詢或 N+1 這類問題通常有明確的數據或 Log 可循。但 Scope.REQUEST 引起的效能耗損,卻往往更難被察覺。 為了拿 x...
在 Day 3 中,我們拆解過手動 new Service() 如何讓實例逃離 Nest Container 的管轄。當時我們關注的是 Service 與 Co...
解決了前面「啟動期」那些繁瑣的 DI 與模組依賴,今天我們正式進入「路由與請求進入」的新階段。請求進到 NestJS 進行路由匹配時,如果使用預設的 Expre...