如何在JSX中使用If-Else

尼克·波什

我了解在简单情况下如何使用它:

{(this.state.show) ? <span>Show</span> : null}

但是如何将其用于大型DOM?

{ if (this.state.show) {
  <span className={this.state.className}>Hi</span>
  {this.state.text}
} else {
  {this.state.text}
}
}

当然,这是行不通的。如何正确做?

awei

你不能那样做。我从您提供的内容中看到了两个潜在的问题。首先,您只能返回一个DOM节点。其次,(这可能是因为这不是您的完整代码),花括号在语法上不正确。在不知道完整源代码的情况下,您可以尝试以下操作:

render: function() {
    var header;

    if (this.state.show) {
        header = <span className={ this.state.className }>Hi</span>;
    }
    return <div>
               { header }
               { this.state.text }
           </div>
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章