美文网首页
react条件渲染

react条件渲染

作者: 郑无穷大 | 来源:发表于2018-10-25 21:05 被阅读0次

条件渲染的几种形式

//第一种,在render里面判断
**三元运算符**
  render() {
    console.log('render')
    return (
      <div className="App" onClick={this.handleClick}>
          xxx
          <ul>
              {this.state.isList? this.state.arr.map((item,i) => {
                return <Person key={i} item={item}></Person>
            }):null}
          </ul>
      </div>
    );
  }

&&短路运算符

image.png
//第二种,独立出来写变量

  render() {
    console.log('render')
    let isList = this.state.isList;
    let arr = this.state.arr;
    let comp = null;
    if(isList) {
      comp = arr.map((item,i) => {
        return <Person key={i} item={item}></Person>
      })
    } else {
      comp = null
    }
    return (
      <div className="App" onClick={this.handleClick}>
          xxx
          <ul>
              { comp }
          </ul>
      </div>
    );
//第三种,写成组件的方法
  getLogin = (isList,arr) => {
    //从props解构赋值
    // console.log(props)
    // let {arr,isList} = props
    if(isList) {
      return arr.map((item,i) => { return  <Person key={i} item={item}></Person> })
    } else {
      return null;
    }
  }
  render() {
    console.log('render')
    let isList=this.state.isList
    let arr=this.state.arr
    return (
      <div className="App" onClick={this.handleClick}>
          xxx
          <ul>
              {this.getLogin(isList,arr)}
          </ul>
      </div>
    );
  }
}
//第四种,独立成函数式组件(注意需要从props从获取传参)
 render() {
    console.log('render')
    return (
      <div className="App" onClick={this.handleClick}>
          xxx
          <ul>
              <Login arr={this.state.arr} isList={this.state.isList} />
          </ul>
      </div>
    );
  }
}
function Login({arr,isList}) {
  //从props解构赋值
  // console.log(props)
  // let {arr,isList} = props
  if(isList) {
    return arr.map((item,i) => { return  <Person key={i} item={item}></Person> })
  } else {
    return null;
  }
}

总结:
根据组件代码的复杂程度,可以依次选择。

相关文章

  • react条件渲染

    条件渲染的几种形式 &&短路运算符 总结:根据组件代码的复杂程度,可以依次选择。

  • react 条件渲染

    有时候我们需要根据条件来决定是否渲染一个组件,那么我们会怎么写呢? 1. 用if判断条件,然后return 不同的...

  • React 条件渲染

    在 React 中,你可以创建不同的组件来封装各种你需要的行为。然后还可以根据应用的状态变化只渲染其中的一部分。 ...

  • react 条件渲染

    条件渲染相当于vue的v-if 和 v-show 小结if else if(A){a}else{b} 通过...

  • React条件渲染

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

  • React条件渲染

    react条件渲染的形式有4种。常用的为&& 和 三目运算 元素变量控制 它可以帮助你有条件地渲染组件的一部分,而...

  • React文档:条件渲染

    在React中,可以创建不同的组件来封装各种需要的行为,还可以根据应用的状态变化只渲染其中一部分。使用 if 或条...

  • react文档——条件渲染

    条件渲染 在 React 中,你可以创建一个囊括所有你需要行为的特定的组件。然后,你可以根据你的应用的 state...

  • react 普通渲染、条件渲染、列表渲染

    1. 普通渲染 2. 条件渲染 3. 列表渲染 以上功能是 jsx 特性

  • React 列表渲染&条件渲染(3)

    条件渲染 判断条件一定是 bool 类型才会渲染,false、null、undefined 列表渲染 报错信息:E...

网友评论

      本文标题:react条件渲染

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