当前位置: 首页 > 面试题库 >

如何使用React(JSX)编写else if结构-三元表达能力不足

太叔繁
2023-03-14
问题内容

我想在react中编写等效的内容:

if (this.props.conditionA) {
    <span>Condition A</span>
} else if (this.props.conditionB) {
    <span>Condition B</span>
} else {
    <span>Neither</span>
}

所以也许

render() {
    return (<div>
        {(function(){
            if (this.props.conditionA) {
                return <span>Condition A</span>
            } else if (this.props.conditionB) {
                return <span>Condition B</span>
            } else {
                return <span>Neither</span>
            }
        }).call(this)}
    </div>)
}

但这似乎太复杂了。有没有更好的办法?


问题答案:

您为什么说三元表达能力不够?

render() {
  return <span>
    {this.props.conditionA ? "Condition A" 
      : this.props.conditionB ? "Condition B" 
      : "Neither"}
  </span>;
}


 类似资料:
  • 有没有更好的方法在这个JSX片段中编写这个三元表达式?

  • 本文向大家介绍如何编写JSP表达式?,包括了如何编写JSP表达式?的使用技巧和注意事项,需要的朋友参考一下 JSP表达式元素包含一种脚本语言表达式,该脚本语言表达式经过评估,转换为String,并插入该表达式出现在JSP文件中的位置。 由于表达式的值已转换为字符串,因此可以在JSP文件的一行文本中使用表达式,无论是否用HTML标记。 expression元素可以包含根据Java语言规范有效的任何表

  • 问题内容: 如何用elseif部分编写PHP三元运算符? 我看到了带有PHP三元运算符和的基本示例,如下所示: 我如何将这样的“ elseif”部分放入三元运算符中? 问题答案: 三元不是您想要的一个很好的解决方案。它不会在您的代码中可读,并且有很多更好的解决方案可用。 为什么不使用数组查找“ map”或“ dictionary”,如下所示: 此应用程序的三元最终看起来像这样: 为什么这样不好?因

  • 我正在使用一个使用React框架的JavaScript遗留项目。我们定义了一些React组件,我想在一个完全不同的TypeScript React项目中重新使用。 JS React组件在controls.jsx文件中定义,如下所示: 在我的TypeScript React项目中,我试图这样使用它: 错误消息显示: JSX元素类型MyComponent不是JSX元素的构造函数。类型'MyCompon

  • 我想写一个简单的程序,其中使用for循环,它将打印数字从0到10。我正在尝试使用一个for循环,它将打印从0到10的数字,并将道具传递给子组件。下面是我的代码:

  • 在Kotlin中,这个表达式的等价物是什么? 这不是Kotlin中的有效代码。