【React 學習筆記 EP.02】JSX 語法

更新 發佈閱讀 4 分鐘

什麼是 JSX 語法?

JSX 是一種 JavaScript 的語法擴充,允許開發者在程式碼中編寫類似 HTML 的標籤結構。幾乎所有的 React 函式元件都使用 JSX 來定義畫面佈局與內容。

JSX 基礎語法

  1. 單一根節點:每個元件的 return 必須只有一個父元素,若有多個標籤需使用空標籤 <>...</> 包裹
  2. 表達式插值:使用大括號 {} 可在標籤內嵌入變數、函式呼叫或邏輯運算,例如:{userName}
  3. 屬性轉換:HTML 的屬性需轉為駝峰式命名,例如:class 變為 classNameonclick 變為 onClick
  4. 閉合標籤:所有標籤都必須閉合,單標籤的結尾需要加上 /,例如:<img />、<input />
  5. 樣式處理:行內樣式 style 接收的是一個 JavaScript 物件,例如:style={{ color: 'red' }}
const App = () => {
// 定義使用者資料 (物件)
const user = {
name: "張小明",
isVIP: true,
hobbies: [
{ id: 1, name: "寫程式" },
{ id: 2, name: "喝咖啡" },
{ id: 3, name: "看書" }
]
};

// 定義行內樣式物件 (注意屬性也是 camelCase)
const cardStyle = {
border: "1px solid #ddd",
padding: "20px",
borderRadius: "8px"
};

// 處理按鈕點擊的事件函式
const handleClick = () => {
alert(`你好,${user.name}`); // 使用樣板字面值跳出訊息
};

// 回傳 JSX 結構
return (
// 使用 style 屬性綁定樣式物件
<div style={cardStyle} className="user-card">
{/* 使用 {} 插入變數 */}
<h2>{user.name} 的個人檔案</h2>

{/* 條件渲染:使用三元運算子判斷是否顯示 VIP 標籤 */}
{user.isVIP ? (
<span style={{ color: "gold", fontWeight: "bold" }}>[VIP 會員]</span>
) : null}

<p>興趣列表:</p>
<ul>
{/* 列表渲染:使用 map 遍歷陣列,每個項目需有唯一的 key */}
{user.hobbies.map(hobby => (
<li key={hobby.id}>{hobby.name}</li>
))}
</ul>

{/* 事件綁定:onClick 接收函式本身,而非執行結果 */}
<button onClick={handleClick}>打招呼</button>
</div>
);
};

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