iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
Modern Web

Angular 工程師的 React 陣痛期:30 天心智模型重建 系列

以 Angular + Spring Boot 為主力的全端工程師,因公司專案需要開始轉換到 React。這個系列不是 React 教學,而是一份陣痛筆記——記錄一個有框架包袱的開發者,在換軌過程中每一次都要問自己「本來框架會幫我做,現在為何得自己來」的落差。

參賽天數 17 天 | 共 25 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文
DAY 11

Day 11|沒有防抖debounce,請求像愛如潮水

打五個字,後端收到五個請求 Day 9 那個 useSearch 上線一週後,後端同事傳訊息來: 「搜尋 API 的流量怎麼是上個月的四倍?」 我打開 Netw...

2026-09-25 ‧ 由 Shawn 分享
DAY 12

Day 12| React 裡,找到了我的 BehaviorSubject

勾一個方框,整頁都重畫了 檔案列表要支援批次多比操作:每一列前面一個勾選框,勾了之後,頁面最上方的工具列要顯示「已選 3 個」,右側面板要列出選中的檔案。 三個...

2026-09-26 ‧ 由 Shawn 分享
DAY 13

Day 13|一直在手刻的,其實是一個快取

上傳完檔案,空間用量卻沒變 測試回報了兩個問題,乍看毫無關係。 第一個:上傳一個檔案之後,檔案列表有更新,但頁首的「已用空間」沒變。 要重新整理頁面才會對。 第...

2026-09-27 ‧ 由 Shawn 分享
DAY 14

Day 14|以為手刻的東西,一個套件五分鐘解決

星期一早上,打開了 lib/ 資料夾 週末想了兩天,決定面對現實。 打開專案,把這一週手刻的東西全部列出來: lib/ useSearch.ts...

2026-09-28 ‧ 由 Shawn 分享
DAY 15

Day 15|我的環境變數是 undefined

我的環境變數是 undefined 開始整理最底層:API 的網址不該寫死在程式碼裡,應該放進環境變數。 照著網路上的範例,在專案根目錄建了一個 .env: A...

2026-09-29 ‧ 由 Shawn 分享
DAY 16

Day 16|沒有 NgModule 之後,牆要自己蓋

改了檔名,別的功能會壞掉 檔案功能的程式碼越寫越多,我決定整理一下:把 features/files/FileRow.tsx 拆成兩個元件,順便改名。 改完,檔...

2026-09-30 ‧ 由 Shawn 分享
DAY 17

Day 17|表單一大就卡?用什麼比較快

系統裡欄位一多,控管起來就豆頁痛。我照之前學到的元件寫法,每個欄位都接上 state: const [form, setForm] = useState<...

2026-10-01 ‧ 由 Shawn 分享
DAY 17

Day 18|一筆資料是 null,整個系統白掉

週五下午,user傳來一張截圖:一整片白。 沒有導覽列、沒有錯誤訊息、什麼都沒有。只是打開檔案列表頁,整個系統就白掉了。 打開 Console,紅字一行: Ty...

2026-10-03 ‧ 由 Shawn 分享
DAY 17

Day 19|分享出去的網址,搜尋條件不見了

同事在群組問:「那個『Q3 報告』的檔案在哪?」 我在檔案頁搜尋 "Q3 報告",篩選類別選「文件」,畫面上剛好兩筆。我把網址列複製下來貼給...

2026-10-04 ‧ 由 Shawn 分享
DAY 17

Day 20|測試不再問元件,改問畫面

我想測 loading,卻找不到 component.loading 第一支測試,我想驗證搜尋時會先顯示載入中。在 Angular,這種測試會寫大概這樣: co...

2026-10-05 ‧ 由 Shawn 分享