当前位置: 首页 > news >正文

【React】条件渲染——逻辑与运算符

条件渲染——逻辑与&&运算符

你会遇到的另一个常见的快捷表达式是 JavaScript 逻辑与(&&)运算符。在 React 组件里,通常用在当条件成立时,你想渲染一些 JSX,或者不做任何渲染。

function Item({ name, isPacked }) {return (<li className="item">{name} {isPacked && '✔'}</li>);
}export default function PackingList() {return (<section><h1>Sally Ride 的行李清单</h1><ul><Item isPacked={true} name="宇航服" /><Item isPacked={true} name="带金箔的头盔" /><Item isPacked={false} name="Tam 的照片" /></ul></section>);
}

运行结果
在这里插入图片描述

当 JavaScript && 表达式 的左侧(我们的条件)为 true 时,它则返回其右侧的值(在我们的例子里是勾选符号)。但条件的结果是 false,则整个表达式会变成 false。在 JSX 里,React 会将 false 视为一个“空值”,就像 null 或者 undefined,这样 React 就不会在这里进行任何渲染。

⚠️注意:

切勿将数字放在 && 左侧.
JavaScript 会自动将左侧的值转换成布尔类型以判断条件成立与否。然而,如果左侧是 0,整个表达式将变成左侧的值(0),React 此时则会渲染 0 而不是不进行渲染。

例如,一个常见的错误是 messageCount && <p>New messages</p>。其原本是想当 messageCount 为 0 的时候不进行渲染,但实际上却渲染了 0。

为了更正,可以将左侧的值改成布尔类型:messageCount > 0 && <p>New messages</p>

http://www.lryc.cn/news/479436.html

相关文章:

  • MATLAB中eig函数用法
  • Chrome(谷歌浏览器中文版)下载安装(Windows 11)
  • Linux 配置JDK
  • 目前主流的人工智能学习框架有哪些?
  • 100种算法【Python版】第57篇——贝叶斯优化算法
  • 在Ubuntu 上实现 JAR 包的自启动
  • 【智能算法应用】哈里斯鹰算法优化二维栅格路径规划问题
  • 单品年销10亿!看麻辣王子是如何布局软文营销为品牌赋能的?
  • 【开源免费】基于SpringBoot+Vue.JS医院管理系统(JAVA毕业设计)
  • C++:模拟实现STL的string
  • 【Python TensorFlow】入门到精通
  • 数据结构:七种排序及总结
  • 【安当产品应用案例100集】030-使用企业微信登录Windows,实现工作电脑与业务系统登录方式统一
  • 大数据数据存储层MemSQL, HBase与HDFS
  • 【HarmonyOS】鸿蒙应用设置控件通用样式AttributeModifier, @Styles
  • Scala IF...ELSE 语句
  • 快速上手vue3+js+Node.js
  • 06 网络编程基础
  • Python 的 FastApi 如何在request 重复取request.body()
  • qt QFontDialog详解
  • AI时代,通才可能会占据更有利的地位
  • qt QHeaderView详解
  • 探索PickleDB:Python中的轻量级数据存储利器
  • yocto下编译perf失败的解决方法
  • 丹摩征文活动|详解 DAMODEL(丹摩智算)平台:为 AI 开发者量身打造的智算云服务
  • ORACLE _11G_R2_ASM 常用命令
  • 掌握Rust模式匹配:从基础语法到实际应用
  • HFSS 3D Layout中Design setting各个选项的解释
  • 线性表之链表详解
  • C/C++使用AddressSanitizer检测内存错误