前端学习之——react篇(条件渲染)

React 没有特殊的语法来编写条件语句,因此你使用的就是普通的 JavaScript 代码。例如使用 if 语句根据条件引入 JSX:

javascript 复制代码
let content;
if (isLoggedIn) {
  content = <AdminPanel />;
} else {
  content = <LoginForm />;
}
return (
  <div>
    {content}
  </div>
);

如果你喜欢更为紧凑的代码,可以使用 条件 ? 运算符。与 if 不同的是,它工作于 JSX 内部:

javascript 复制代码
<div>
  {isLoggedIn ? (
    <AdminPanel />
  ) : (
    <LoginForm />
  )}
</div>

当你不需要 else 分支时,你还可以使用 逻辑 && 语法

javascript 复制代码
<div>
  {isLoggedIn && <AdminPanel />}
</div>

所有这些方法也适用于有条件地指定属性。如果你对 JavaScript 语法不熟悉,你可以从一直使用 if...else 开始。

注意⚠️:

在上面的代码片段中,&& 是 JavaScript 中的逻辑与(AND)操作符。它用于在条件表达式中进行逻辑判断。

在这个特定的用法中,{isLoggedIn && <AdminPanel />} 表示如果 isLoggedIn 为真(即为 true),则渲染 <AdminPanel> 组件;否则,不进行渲染。

这种写法是一种简洁的条件渲染方式。当 isLoggedIn 为真时,表达式的结果为 <AdminPanel /> 组件,从而使其被渲染。当 isLoggedIn 为假时,表达式的结果为 false,因此不会渲染任何内容。

这种写法相当于以下的条件语句:

javascript 复制代码
<div>
  {isLoggedIn ? <AdminPanel /> : null}
</div>

使用 && 操作符的条件渲染方式可以帮助简化代码并提高可读性。

相关推荐
CoCo的编程之路3 分钟前
2026 前端效能飞跃:深度解析智能助手的页面构建最大化方案
前端·人工智能·ai编程·智能编程助手·文心快码baiducomate
AOwhisky6 分钟前
Docker 学习笔记:镜像分发、容器运行与资源限制
笔记·学习·docker
JavaAgent架构师31 分钟前
前端AI工程化(一):AI通信协议深度解析
前端·人工智能
林恒smileZAZ34 分钟前
前端如何让图片、视频、pdf等文件在浏览器直接下载而非预览
前端·pdf
孙69034237 分钟前
electron播放本地任意格式的视频
前端·javascript
小小小小宇44 分钟前
设计稿转代码:如何将生成代码与内部组件库关联
前端
七牛云行业应用44 分钟前
别每个 AI 工具单独配了!MCP 一次搭建,Claude、Cursor、TRAE 全能用
前端
_xaboy44 分钟前
FormCreate 设计器 v6.3 正式发布:AI 表单助理3.0登场!
前端·vue.js·低代码·开源·表单设计器
胡志辉1 小时前
邮件中点击“加载图片”,你的IP地址已经被泄漏
前端·后端·安全
MediaTea1 小时前
人工智能通识课:机器学习之无监督学习
人工智能·深度学习·学习·机器学习