React 條件判斷實(shí)例詳解
在 React 中,可以通過 JavaScript 的條件語句來動(dòng)態(tài)渲染組件或元素。
以下是幾種常用的在 React 中處理?xiàng)l件渲染的方法:
1. 使用 if 語句
在 render 方法或函數(shù)組件的返回值中使用 if 語句來決定渲染內(nèi)容。
實(shí)例
import React from 'react';
import ReactDOM from 'react-dom/client';
class MyComponent extends React.Component {
render() {
const isLoggedIn = this.props.isLoggedIn;
let content;
if (isLoggedIn) {
content = <h1>Welcome back!</h1>;
} else {
content = <h1>Please sign up.</h1>;
}
return (
<div>
{content}
</div>
);
}
}
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<MyComponent isLoggedIn={true} />);2. 使用三元運(yùn)算符
在 JSX 中,可以使用三元運(yùn)算符進(jìn)行簡潔的條件渲染。
實(shí)例
import React from 'react';
import ReactDOM from 'react-dom/client';
const MyComponent = (props) => {
const isLoggedIn = props.isLoggedIn;
return (
<div>
{isLoggedIn ? <h1>Welcome back!</h1> : <h1>Please sign up.</h1>}
</div>
);
};
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<MyComponent isLoggedIn={true} />);3. 使用邏輯與 (&&) 運(yùn)算符
在 JSX 中,可以使用邏輯與運(yùn)算符來進(jìn)行條件渲染。如果條件為 true,則渲染后面的元素。
實(shí)例
import React from 'react';
import ReactDOM from 'react-dom/client';
const MyComponent = (props) => {
const isLoggedIn = props.isLoggedIn;
return (
<div>
{isLoggedIn && <h1>Welcome back!</h1>}
{!isLoggedIn && <h1>Please sign up.</h1>}
</div>
);
};
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<MyComponent isLoggedIn={true} />);4. 使用 switch 語句
在需要處理多個(gè)條件時(shí),可以在 render 方法中使用 switch 語句。
實(shí)例
import React from 'react';
import ReactDOM from 'react-dom/client';
class MyComponent extends React.Component {
render() {
const userRole = this.props.userRole;
let content;
switch (userRole) {
case 'admin':
content = <h1>Welcome, Admin!</h1>;
break;
case 'user':
content = <h1>Welcome, User!</h1>;
break;
case 'guest':
content = <h1>Welcome, Guest!</h1>;
break;
default:
content = <h1>Who are you?</h1>;
}
return (
<div>
{content}
</div>
);
}
}
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<MyComponent userRole="admin" />);小結(jié)
if語句:適合在render方法或函數(shù)組件的返回值中使用來決定渲染內(nèi)容。- 三元運(yùn)算符:適合在 JSX 中進(jìn)行簡潔的條件渲染。
- 邏輯與 (
&&) 運(yùn)算符:適合在 JSX 中條件渲染,當(dāng)條件為true時(shí)渲染元素。 switch語句:適合處理多個(gè)條件,進(jìn)行不同內(nèi)容的渲染。
到此這篇關(guān)于React 條件判斷的文章就介紹到這了,更多相關(guān)React 條件判斷內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在create-react-app中使用css modules的示例代碼
這篇文章主要介紹了在create-react-app中使用css modules的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-07-07
淺談React Native Flexbox布局(小結(jié))
這篇文章主要介紹了淺談React Native Flexbox布局(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-01-01
react寫一個(gè)select組件的實(shí)現(xiàn)代碼
這篇文章主要介紹了react寫一個(gè)select組件的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
React?Native中原生實(shí)現(xiàn)動(dòng)態(tài)導(dǎo)入的示例詳解
在React?Native社區(qū)中,原生動(dòng)態(tài)導(dǎo)入一直是期待已久的功能,在這篇文章中,我們將比較靜態(tài)和動(dòng)態(tài)導(dǎo)入,學(xué)習(xí)如何原生地處理動(dòng)態(tài)導(dǎo)入,以及有效實(shí)施的最佳實(shí)踐,希望對大家有所幫助2024-02-02
React?高德地圖進(jìn)京證路線規(guī)劃問題記錄(匯總)
這篇文章主要介紹了React高德地圖進(jìn)京證路線規(guī)劃問題小記,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-08-08
react中form.setFieldvalue數(shù)據(jù)回填時(shí) value和text不對應(yīng)的問題及解決方法
這篇文章主要介紹了react中form.setFieldvalue數(shù)據(jù)回填時(shí) value和text不對應(yīng)的問題及解決方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07
react組件中的constructor和super知識(shí)點(diǎn)整理
這篇文章主要介紹了react組件中的constructor和super知識(shí)點(diǎn)整理,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-08-08
React如何實(shí)現(xiàn)視頻旋轉(zhuǎn)縮放
這篇文章主要為大家詳細(xì)介紹了React如何實(shí)現(xiàn)視頻旋轉(zhuǎn)縮放功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-11-11

