美文网首页React
006|React之条件渲染

006|React之条件渲染

作者: 中年小钢炮 | 来源:发表于2017-06-06 20:45 被阅读5次

    JSX表达式中可以使用&&来达到if语句的效果:

    function Mailbox(props) {
      const unreadMessages = props.unreadMessages;
      return (
        <div>
          <h1>Hello!</h1>
          {unreadMessages.length > 0 &&
            <h2>
              You have {unreadMessages.length} unread messages.
            </h2>
          }
        </div>
      );
    }
    

    若要在JSX中达到if...else效果,可以使用if三元表达式

    expression?statement1:statement2
    
    render() {
      const isLoggedIn = this.state.isLoggedIn;
      return (
        <div>
          The user is <b>{isLoggedIn ? 'currently' : 'not'}</b> logged in.
        </div>
      );
    }
    

    又如:

    render() {
      const isLoggedIn = this.state.isLoggedIn;
      return (
        <div>
          {isLoggedIn ? (
            <LogoutButton onClick={this.handleLogoutClick} />
          ) : (
            <LoginButton onClick={this.handleLoginClick} />
          )}
        </div>
      );
    }
    

    为了阻止一个组件绘制,直接返回null即可。

    function WarningBanner(props) {
      if (!props.warn) {
        return null;
      }
    
      return (
        <div className="warning">
          Warning!
        </div>
      );
    }
    

    React中如何处理表单?

    好,这一节就到这里。后续我将介绍更多React技术细节,来慢慢解答上述问题。

    想学计算机技术吗?需要1对1专业级导师指导吗?想要团队陪你一起进步吗?欢迎加我为好友!微信号:iTekka。

    相关文章

      网友评论

        本文标题:006|React之条件渲染

        本文链接:https://www.haomeiwen.com/subject/jpynfxtx.html