首页 > 其他分享 >React:条件渲染(三目运算符)

React:条件渲染(三目运算符)

时间:2022-10-19 14:23:48浏览次数:78  
标签:React false 渲染 JavaScript 运算符 && 三目

在 React 中,你可以创建不同的组件来封装各种你需要的行为。然后,依据应用的不同状态,你可以只渲染对应状态下的部分内容。

React 中的条件渲染和 JavaScript 中的一样,使用 JavaScript 运算符 if 或者条件运算符去创建元素来表现当前的状态,然后让 React 根据它们来更新 UI。

  • 三目运算符

在 JSX 内部不能使用 if else 语句,但可以使用 三元运算 表达式来替代

condition ? true : false

var i = 10;
ReactDOM.render(
    <div>
      <h1>{i == 1 ? 'True!' : 'False'}</h1>
      {i > 0 ? <div className="box"></div> : '' }  
    </div>,
    document.getElementById('example')
);

 

  • 可以在JSX外部使用if语句

  • var i = 10;
    if(i > 0){ //使用if语句的好处是:如果条件不满足且不需要渲染组件时不需要写else
        box = <div className="box"></div>;
    }
    ReactDOM.render(
        <div>
          { box }
        </div>,
        document.getElementById('example')
    );

     

与运算符 &&

通过花括号包裹代码,你可以在 JSX 中嵌入表达式。这也包括 JavaScript 中的逻辑与 (&&) 运算符。它可以很方便地进行元素的条件渲染:

JavaScript 中,true && expression 总是会返回 expression, 而 false && expression 总是会返回 false

如果条件是 true&& 右侧的元素就会被渲染,如果是 false,React 会忽略并跳过它。

 

标签:React,false,渲染,JavaScript,运算符,&&,三目
From: https://www.cnblogs.com/LIXI-/p/16806068.html

相关文章

  • React高级特性之Render Props
    renderprop是一个技术概念。它指的是使用值为function类型的prop来实现Reactcomponent之间的代码共享。如果一个组件有一个render属性,并且这个render属性的值为一个返......
  • React高级特性之Context
    Context提供了一种不需要手动地通过props来层层传递的方式来传递数据。正文在典型的React应用中,数据是通过props,自上而下地传递给子组件的。但是对于被大量组件使用的......
  • React的5种高级模式
    本文概述了5种现代高级React模式,包括集成代码、优点和缺点,以及在公共库中的具体用法。像每个React开发者一样,你可能已经问过自己以下问题之一我如何建立一个可重复使用......
  • React之高阶组件
    React之高阶组件注意:本章节运行环境在​​React项目构建​​章节之上。文章目录​​React之高阶组件​​​​高阶组件​​​​装饰器​​​​带参装饰器​​高阶组件​​let......
  • Python教程Day03-Python输出、输入、转换数据类型、运算符
    一、输出作用:程序输出内容给用户print('helloPython')age=18print(age)#需求:输出“今年我的年龄是18岁”1、格式化输出格式化输出即按照一定的格式输出内容1.1格......
  • React Hook:useState
    Hook 是React16.8的新增特性。它可以让你在不编写class的情况下使用state以及其他的React特性。但是不要什么业务都使用hook,请在合适的时候使用hook,否则会造......
  • React:Props属性(父组件传值子组件)
    React的一大特点是单向数据流。React中的每一个组件,都包含有一个属性(props),属性主要是从父组件传递给子组件的,在组件内部,我们可以通过this.props获取属性对象。1、定义和......
  • [原创]一款基于Reactor线程模型的java网络爬虫框架
    AJSpridergithub:​​https://github.com/zhuchangwu/AJSpider​​概述AJSprider是笔者基于Reactor线程模式+Jsoup+HttpClient封装的一款轻量级java多线程网络爬虫框架,简......
  • React组件之间的通信方式总结(下)
    一、写一个时钟用react写一个每秒都可以更新一次的时钟importReactfrom'react'importReactDOMfrom'react-dom'functiontick(){letele=<h1>{new......
  • React面试八股文(第二期)
    React.forwardRef是什么?它有什么作用?React.forwardRef会创建一个React组件,这个组件能够将其接受的ref属性转发到其组件树下的另一个组件中。这种技术并不常见,但在以下......