React 中的条件渲染允许您根据某些条件(例如状态或道具)渲染不同的组件或元素。以下是一些实现条件渲染的常用方法:
您可以在组件内使用标准 JavaScript if-else 语句。
function MyComponent({ isLoggedIn }) { if (isLoggedIn) { return <h1>Welcome back!</h1>; } else { return <h1>Please sign in.</h1>; } }
这是一种根据条件呈现内容的简洁方法。
function MyComponent({ isLoggedIn }) { return ( <h1> {isLoggedIn ? 'Welcome back!' : 'Please sign in.'} </h1> ); }
仅当条件为真时,您才可以使用逻辑 AND 运算符来渲染组件。
function MyComponent({ isLoggedIn }) { return ( <div> {isLoggedIn && <h1>Welcome back!</h1>} {!isLoggedIn && <h1>Please sign in.</h1>} </div> ); }
对于更复杂的条件,可以使用 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中文网其他相关文章!