首頁 > web前端 > js教程 > 主體

React 中的條件渲染

Mary-Kate Olsen
發布: 2024-09-28 18:21:02
原創
231 人瀏覽過

Conditional Rendering in React

React 中的條件渲染可讓您根據某些條件(例如狀態或道具)渲染不同的元件或元素。以下是一些實作條件渲染的常用方法:

1. 使用 If-Else 語句

您可以在元件內使用標準 JavaScript if-else 語句。

function MyComponent({ isLoggedIn }) {
    if (isLoggedIn) {
        return <h1>Welcome back!</h1>;
    } else {
        return <h1>Please sign in.</h1>;
    }
}
登入後複製

2. 使用三元運算子

這是一種根據條件呈現內容的簡潔方法。

function MyComponent({ isLoggedIn }) {
    return (
        <h1>
            {isLoggedIn ? 'Welcome back!' : 'Please sign in.'}
        </h1>
    );
}
登入後複製

3. 使用邏輯&&運算子

只有當條件為真時,您才可以使用邏輯 AND 運算子來渲染元件。

function MyComponent({ isLoggedIn }) {
    return (
        <div>
            {isLoggedIn && <h1>Welcome back!</h1>}
            {!isLoggedIn && <h1>Please sign in.</h1>}
        </div>
    );
}
登入後複製

4. Switch 語句

對於較複雜的條件,可以使用 switch 語句。

function MyComponent({ status }) {
    switch (status) {
        case 'loading':
            return <h1>Loading...</h1>;
        case 'success':
            return <h1>Data loaded successfully!</h1>;
        case 'error':
            return <h1>There was an error!</h1>;
        default:
            return null;
    }
}
登入後複製

例子

這是使用功能組件的完整範例:

import React from 'react';

function App() {
    const [isLoggedIn, setIsLoggedIn] = React.useState(false);

    return (
        <div>
            <button onClick={() => setIsLoggedIn(!isLoggedIn)}>
                {isLoggedIn ? 'Logout' : 'Login'}
            </button>
            {isLoggedIn ? <h1>Welcome back!</h1> : <h1>Please sign in.</h1>}
        </div>
    );
}

export default App;
登入後複製

概括

根據您的情況複雜程度和個人編碼風格選擇最適合您需求的方法。如果您需要更多範例或解釋,請告訴我!

以上是React 中的條件渲染的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!