【React 學習筆記 EP.04】Props 屬性

更新 發佈閱讀 3 分鐘

什麼是 Props?

屬性 (Props) 是 React 元件之間傳遞資料的機制,由父元件傳給子元件,具有唯讀性。它是實現組件化開發的核心,確保介面能根據外部傳入的參數動態渲染不同內容。

Props 基礎語法

  1. 單向資料流:資料只能由上而下傳遞,子元件不可直接修改接收到的 Props
  2. 解構賦值:在元件參數中使用 { propName } 直接提取資料,提高程式碼可讀性
  3. 預設值:可在解構時賦予初值,確保父元件未傳資料時程式不會崩潰
  4. 型別傳遞:Props 可傳遞字串、數字、物件、陣列,甚至是回呼函式
  5. 組合 (Children):特殊的 props.children 可讓元件包含巢狀內容

常見錯誤與解決方法

  1. 嘗試修改 Props:在子元件內直接重新賦值給 Props 變數,建議改用 State 或由父元件傳遞變更函式。
  2. 解構未定義物件:若父元件未傳送物件卻進行解構導致錯誤,建議設定預設參數 { data = {} }
  3. 傳遞數字當成字串:在 JSX 中傳遞數字卻未使用大括號(如 age="25"),建議改用 age={25} 以保持型別正確。
import './App.css'

// 定義子元件
// 使用解構賦值取得 props 並設定 isAdmin 的預設值為 false
const UserCard = ({ name, age, isAdmin = false }) => {
return (
<div style={{ border: '1px solid #ccc', padding: '10px', margin: '10px' }}> {/* 設定基礎容器樣式 */}
<h3>姓名:{name}</h3> {/* 渲染從父元件傳來的字串 */}
<p>年齡:{age}</p> {/* 渲染從父元件傳來的數字 */}
{isAdmin && <mark>管理員權限</mark>} {/* 條件渲染:若為管理員則顯示標籤 */}
</div>
);
};

// 定義父元件
const App = () => {
return (
<div>
<h1>團隊成員名單</h1> {/* 渲染頁面標題 */}

{/* 傳遞字串與數字給子元件 */}
<UserCard name="王小明" age={25} />

{/* 傳遞所有屬性,包含布林值 */}
<UserCard name="李大華" age={30} isAdmin={true} />
</div>
);
};

export default App; // 匯出元件供外部使用
留言
avatar-img
梧笙 WuSheng 的沙龍
67會員
36內容數
⛰️ 梧笙,意即「吾生」,我是一個平凡的理工宅男。 生活離不開 Code 與 Game,這裡主要紀錄與分享: 📖 學習筆記|紀錄我學習過的電腦技能與知識。 💻 科技新知|整理實用工具與科技領域的資訊。 🎮 電玩娛樂|聊聊遊戲動漫與實況直播的話題。 目前更新頻率不固定,有興趣歡迎追蹤。
2026/04/29
元件 (Components) 是將使用者介面拆解成獨立、可重用的程式碼區塊,透過組合多個元件,開發者能像堆疊樂高積木一樣,快速建構出複雜且易於維護的網頁介面。
2026/04/29
元件 (Components) 是將使用者介面拆解成獨立、可重用的程式碼區塊,透過組合多個元件,開發者能像堆疊樂高積木一樣,快速建構出複雜且易於維護的網頁介面。
2026/04/28
JSX 是一種 JavaScript 的語法擴充,允許開發者在程式碼中編寫類似 HTML 的標籤結構。幾乎所有的 React 函式元件都使用 JSX 來定義畫面佈局與內容。
2026/04/28
JSX 是一種 JavaScript 的語法擴充,允許開發者在程式碼中編寫類似 HTML 的標籤結構。幾乎所有的 React 函式元件都使用 JSX 來定義畫面佈局與內容。
2026/04/28
React 是由 Facebook 開發的開源 JavaScript 前端函式庫,特色是把畫面切成一塊一塊的「元件」,就像積木一樣,可以重複使用、自由組合。當資料改變時,React 會自動幫你更新畫面,不需要手動操作。FB、IG 等網站都是用 React 打造的,也是現在最熱門的前端技術之一。
2026/04/28
React 是由 Facebook 開發的開源 JavaScript 前端函式庫,特色是把畫面切成一塊一塊的「元件」,就像積木一樣,可以重複使用、自由組合。當資料改變時,React 會自動幫你更新畫面,不需要手動操作。FB、IG 等網站都是用 React 打造的,也是現在最熱門的前端技術之一。
看更多
你可能也想看
Thumbnail
在 React 的世界裡,Props 負責從父元件向子元件傳遞資料,而 State 則是負責管理元件自身的內部資料。 State 就像元件的記憶,可以儲存元件的狀態,並根據狀態的變化來更新 UI。
Thumbnail
在 React 的世界裡,Props 負責從父元件向子元件傳遞資料,而 State 則是負責管理元件自身的內部資料。 State 就像元件的記憶,可以儲存元件的狀態,並根據狀態的變化來更新 UI。
Thumbnail
若說易卜生的《玩偶之家》為 19 世紀的女性,開啟了一扇離家的窄門,那麼《海妲.蓋柏樂》展現的便是門後的窒息世界。本篇文章由劇場演員 Amily 執筆,同為熟稔文本的演員,亦是深刻體察制度縫隙的當代女性,此文所看見的不僅僅是崩壞前夕的最後發聲,更是女人被迫置於冷酷的制度之下,步步陷入無以言說的困境。
Thumbnail
若說易卜生的《玩偶之家》為 19 世紀的女性,開啟了一扇離家的窄門,那麼《海妲.蓋柏樂》展現的便是門後的窒息世界。本篇文章由劇場演員 Amily 執筆,同為熟稔文本的演員,亦是深刻體察制度縫隙的當代女性,此文所看見的不僅僅是崩壞前夕的最後發聲,更是女人被迫置於冷酷的制度之下,步步陷入無以言說的困境。
Thumbnail
全新版本的《三便士歌劇》如何不落入「復刻經典」的巢臼,反而利用華麗的秀場視覺,引導觀眾在晚期資本主義的消費愉悅之中,而能驚覺「批判」本身亦可能被收編——而當絞繩升起,這場關於如何生存的黑色遊戲,又將帶領新時代的我們走向何種後現代的自我解構?
Thumbnail
全新版本的《三便士歌劇》如何不落入「復刻經典」的巢臼,反而利用華麗的秀場視覺,引導觀眾在晚期資本主義的消費愉悅之中,而能驚覺「批判」本身亦可能被收編——而當絞繩升起,這場關於如何生存的黑色遊戲,又將帶領新時代的我們走向何種後現代的自我解構?
Thumbnail
長期以來,西方美學以《維特魯威人》式的幾何比例定義「完美身體」,這種視覺標準無形中成為殖民擴張與種族分類的暴力工具。本文透過分析奈及利亞編舞家庫德斯.奧尼奎庫的舞作《轉轉生》,探討當代非洲舞蹈如何跳脫「標本式」的文化觀看。
Thumbnail
長期以來,西方美學以《維特魯威人》式的幾何比例定義「完美身體」,這種視覺標準無形中成為殖民擴張與種族分類的暴力工具。本文透過分析奈及利亞編舞家庫德斯.奧尼奎庫的舞作《轉轉生》,探討當代非洲舞蹈如何跳脫「標本式」的文化觀看。
Thumbnail
在 React 的世界裡,元件 (Component) 扮演著至關重要的角色。它們是構成使用者介面 (UI) 的基本 building blocks,如同積木一般,可以組合成複雜的應用程式。
Thumbnail
在 React 的世界裡,元件 (Component) 扮演著至關重要的角色。它們是構成使用者介面 (UI) 的基本 building blocks,如同積木一般,可以組合成複雜的應用程式。
Thumbnail
本文深度解析賽勒布倫尼科夫的舞臺作品《傳奇:帕拉贊諾夫的十段殘篇》,如何以十段殘篇,結合帕拉贊諾夫的電影美學、象徵意象與當代政治流亡抗爭,探討藝術在儀式消失的現代社會如何承接意義,並展現不羈的自由靈魂。
Thumbnail
本文深度解析賽勒布倫尼科夫的舞臺作品《傳奇:帕拉贊諾夫的十段殘篇》,如何以十段殘篇,結合帕拉贊諾夫的電影美學、象徵意象與當代政治流亡抗爭,探討藝術在儀式消失的現代社會如何承接意義,並展現不羈的自由靈魂。
Thumbnail
React 事件處理:讓網頁動起來~ 網頁的互動性是吸引使用者、提供良好體驗的關鍵。 在 React 中,透過監聽使用者的操作(例如點擊、滑鼠移動、鍵盤輸入),並執行相應的程式碼,來實現豐富的互動效果。
Thumbnail
React 事件處理:讓網頁動起來~ 網頁的互動性是吸引使用者、提供良好體驗的關鍵。 在 React 中,透過監聽使用者的操作(例如點擊、滑鼠移動、鍵盤輸入),並執行相應的程式碼,來實現豐富的互動效果。
Thumbnail
在 React 的世界裡,元件 (Component) 就像一個個獨立的個體,各自負責 UI 的一部分,要讓這些個體協同工作,就需要一種溝通的機制,而 Props 就是組件之間通信和數據傳遞的主要方式。
Thumbnail
在 React 的世界裡,元件 (Component) 就像一個個獨立的個體,各自負責 UI 的一部分,要讓這些個體協同工作,就需要一種溝通的機制,而 Props 就是組件之間通信和數據傳遞的主要方式。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News