Skip to content

Prop Drilling

屬性逐層傳遞

01你是不是遇到這個 / THE SYMPTOM

我有個資料要從最上層傳到很深的子元件,結果中間每一層元件都得幫忙轉手這個 prop,明明它們自己根本用不到,改個欄位名要動一整串檔案。

↑ 如果你點頭了,你要的關鍵字就是 Prop Drilling

02這是什麼 / DEFINITION

為了把資料送到深層元件,被迫讓中間每一層元件都接收並往下傳遞同一個 prop,即使中間層自己用不到。

03什麼時候用 / WHEN TO USE

辨識這個詞是為了知道「該換方案了」:當同一個 prop 穿過三層以上的中間元件、純粹只是過路時,就該改用 Context、狀態管理庫或組合(children)來解。

04怎麼跟 AI 說 / HOW TO ASK

直接複製這句、貼進 Claude Code / Cursor / Copilot / ChatGPT:

這個值現在是 prop drilling 穿過好幾層中間元件,幫我改用 React Context(或 zustand)把它變成跨層級共享,移掉中間層那些只是轉手的 props。
05常見坑 / WATCH OUT

別反應過度全部塞進 Context:傳一兩層其實沒問題、反而更好追蹤。Context 用過頭會讓元件難以複用、且 value 一變就連帶重渲染所有訂閱者。

06相關的詞 / RELATED