程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了是否可以在React render函数中使用if ... else ...语句?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决是否可以在React render函数中使用if ... else ...语句??

开发过程中遇到是否可以在React render函数中使用if ... else ...语句?的问题如何解决?下面主要结合日常开发的经验,给出你关于是否可以在React render函数中使用if ... else ...语句?的解决方法建议,希望对你解决是否可以在React render函数中使用if ... else ...语句?有所启发或帮助;

不完全一样,但是有解决方法。在React的文档中有一节关于条件渲染,您应该看一下。这是使用内联if-else可以做什么的示例。

render() {
  const isLoggedIn = this.state.isLoggedIn;
  return (
    <div>
      {isLoggedIn ? (
        <logoutbutton onClick={this.handlelogoutClick} />
      ) : (
        <Loginbutton onClick={this.handleLoginClick} />
      )}
    </div>
  );
}

您也可以在render函数中处理它,但是要在返回Jsx之前。

if (isLoggedIn) {
  button = <logoutbutton onClick={this.handlelogoutClick} />;
} else {
  button = <Loginbutton onClick={this.handleLoginClick} />;
}

return (
  <div>
    <GreeTing isLoggedIn={isLoggedIn} />
    {Button}
  </div>
);

还值得一提的是ZekeDroID在评论中提到的内容。如果您只是检查条件而又不想呈现不符合要求的特定代码,则可以使用&& operator

  return (
    <div>
      <h1>Hello!</h1>
      {unreadmessages.length > 0 &&
        <h2>
          You have {unreadmessages.length} unread messages.
        </h2>
      }
    </div>
  );

解决方法

@H_674_24@

基本上,我有一个react组件,其render()功能主体如下:(这是我的理想组件,这意味着它当前不起作用)

render(){
    return (
        <div>
            <Element1/>
            <Element2/>
            // note: code does not work here
            if (this.props.hasImagE) <MyImage />
            else <OtherElement/>
        </div>
    )
}

大佬总结

以上是大佬教程为你收集整理的是否可以在React render函数中使用if ... else ...语句?全部内容,希望文章能够帮你解决是否可以在React render函数中使用if ... else ...语句?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。