当前位置: 首页 > 知识库问答 >
问题:

JSX中的条件呈现

叶举
2023-03-14

如何使用JSX进行条件渲染?

例如,我这里有div,如果props的值为null,我想呈现文本“不知道”,否则如果props不等于null,则呈现props。

例如:

<div>{ return this.props.date === null ? 'NO IDEA' : this.props.date }</div>

我试过了,但没有成功。知道我做错了什么吗?

提前感谢!

共有2个答案

曹智
2023-03-14

首先,不需要在表达式块内使用return语句。接下来,不要只检查null,它可能是未定义的

<div>{ this.props.date ? this.props.date : 'NO IDEA' }</div> 

这只是检查date是否可用/是否以布尔值解析为true,然后使用true值,否则使用false值。

或者,即使使用| |更简单的语法:

{ this.props.date || 'NO IDEA' }

仅当日期值在布尔值中解析为true时,才会呈现日期,否则将呈现“不知道”。

丌官开宇
2023-03-14

您可以简单地使用基于this.props.date的三元运算符,因此不需要在此处返回

<div> {this.props.date === null ? 'NO IDEA' : this.props.date }</div>
 类似资料:
  • 我想动态呈现JSX,如下所示; 因此,我希望仅当“showSubTextAndIcon”为true时,才渲染该子文本和图标。现在,上述方法不起作用,我得到一个语法错误,说:; 相邻的JSX元素必须包装在一个封闭的标记中。你想要一个JSX片段吗 这工作,如果我添加一个包装列布局。然而,当show SubTextAndIcon是真的时,这会扰乱我的布局。 注意:列布局是从材料ui库派生的。

  • 如何在样式组件中使用条件渲染来设置我的按钮类在React中使用样式组件? 在css中,我会这样做: 如果我尝试使用'

  • 我在JavaScript中有一个对象数组,我想循环遍历这些对象并返回一些JSX,其中包含引导类,这样每一行中总是显示2列。 根据我对其他语言和模板引擎的经验,这非常简单:只需创建一个开头和结尾的标记,其中包含一个类,然后使用模板引擎,循环并渲染每个对象,直到循环的计数器为,您可以动态地结束该角色并开始一个新角色。 大概是这样的: 我在map函数中尝试了这个方法,但它给出了一个语法错误,因为在条件传

  • 问题内容: 我一直在尝试进行AJAX调用,然后在检索到它之后将其添加到我的视图中。 当前代码实际上什么也没有发生。 问题答案: 您的组件名称必须以大写字母开头,因为以小写字母开头的组件会被搜索为默认DOM元素,例如。对于您的组件,情况并非如此。将其设置为大写即可。 根据文档: 当元素类型以字母开头时,它指的是诸如或的内置组件,并导致将字符串 或“ span”传递给。以大写字母开头的类型,例如,编译

  • 我正在有条件地设置我的

  • 相当新的反应,我相信这很容易,但我正在尝试转换: 转换成单个返回语句。 基本上是替换