在反应三元运算符中使用 AND 语句(两个条件)
Utilizing AND statement (two conditions) inside react ternary operator
如果 this.state.isHidden
为假,下面的 是一个带有逻辑 && 运算符的内联语句,它会呈现一个组件。
<div>{!this.state.isHidden && <ShowThisComponent /> }</div>
以上行按预期工作。我的问题是我不知道如何在上面的行中添加要满足的第二个条件(例如 var1 === var2)。因此,如果 return 都为真,则显示该组件。我怎样才能做到这一点?谢谢
我查看了文档(https://reactjs.org/docs/conditional-rendering.html#inline-if-with-logical-ampamp-operator)找不到答案
{ !this.state.isHidden && secondCondition && <ShowThisComponent /> }
{ (!this.state.isHidden && var1 === var2) && <ShowThisComponent /> }
运算符是这样工作的:
{<any boolean statement> && <Component-to-be-displayed />}
.
-或-
{(<any boolean statement>) && <Component-to-be-displayed />}
...在分析布尔语句时使用括号总是一个好主意
在你的情况下它看起来像这样:
(!this.state.isHidden && var1 === var2) && <Component-to-be-displayed />
所以想像这样的运算符:
如果条件为真 && 渲染组件
您还可以执行 if 语句:
{(<any boolean statement>) ?
<Component-to-be-displayed-if-true />
:
<Component-to-be-displayed-if-false />
}
你可以这样想这个运算符:
如果条件为真?渲染组件 A : 否则渲染组件 B
this.state.isHidden
为假,下面的 是一个带有逻辑 && 运算符的内联语句,它会呈现一个组件。
<div>{!this.state.isHidden && <ShowThisComponent /> }</div>
以上行按预期工作。我的问题是我不知道如何在上面的行中添加要满足的第二个条件(例如 var1 === var2)。因此,如果 return 都为真,则显示该组件。我怎样才能做到这一点?谢谢
我查看了文档(https://reactjs.org/docs/conditional-rendering.html#inline-if-with-logical-ampamp-operator)找不到答案
{ !this.state.isHidden && secondCondition && <ShowThisComponent /> }
{ (!this.state.isHidden && var1 === var2) && <ShowThisComponent /> }
运算符是这样工作的:
{<any boolean statement> && <Component-to-be-displayed />}
.
-或-
{(<any boolean statement>) && <Component-to-be-displayed />}
...在分析布尔语句时使用括号总是一个好主意
在你的情况下它看起来像这样:
(!this.state.isHidden && var1 === var2) && <Component-to-be-displayed />
所以想像这样的运算符:
如果条件为真 && 渲染组件
您还可以执行 if 语句:
{(<any boolean statement>) ?
<Component-to-be-displayed-if-true />
:
<Component-to-be-displayed-if-false />
}
你可以这样想这个运算符:
如果条件为真?渲染组件 A : 否则渲染组件 B