06 React 中你不知道的this.setState

简介: 06 React 中你不知道的this.setState

16==》 this.setStat是批量执行的  它发现做三次是多余的,所以只执行一次


import React, { Component } from "react";
export default class StaTest extends Component {
  state = {
    nun: 1
  };
  componentDidMount() {
    //  this.setStat是批量执行的  它发现做三次是多余的,所以只执行一次
    this.setState({
      nun: this.state.nun + 1
    });
    this.setState({
        nun: this.state.nun + 1
    });
    this.setState({
        nun: this.state.nun + 1
    });
  }
  render() {
    return (
      <div>
        {/* 获取state中的值  最终为2*/}
        {this.state.nun}
      </div>
    );
  }
}


如何让他执行三次


更改为this.setState


 this.setState(prevState=>{
        return{
            nun:prevState.nun+1
        }
    })
      this.setState(prevState => {
          return {
              nun: prevState.nun + 1
          }
      })
      this.setState(prevState => {
          return {
              nun: prevState.nun + 1
          }
      })
      可以优化为
      this.setState(prevState => ({
          nun: prevState.nun + 1
      }))


相关文章
|
前端开发 JavaScript 索引
React中this.setState({xxx:''})与this.state.xxx='' 有区别吗?
React中this.setState({xxx:''})与this.state.xxx='' 有区别吗?
182 0
|
前端开发 JavaScript
React State(状态): React通过this.state来访问state,通过this.setState()方法来更新state
React State(状态) React 把组件看成是一个状态机(State Machines)。通过与用户的交互,实现不同状态,然后渲染 UI,让用户界面和数据保持一致。
1503 0
|
1月前
|
设计模式 前端开发 数据可视化
【第4期】一文了解React UI 组件库
【第4期】一文了解React UI 组件库
178 0
|
1月前
|
存储 前端开发 JavaScript
【第34期】一文学会React组件传值
【第34期】一文学会React组件传值
37 0
|
1月前
|
前端开发
【第31期】一文学会用React Hooks组件编写组件
【第31期】一文学会用React Hooks组件编写组件
39 0
|
1月前
|
存储 前端开发 JavaScript
【第29期】一文学会用React类组件编写组件
【第29期】一文学会用React类组件编写组件
43 0
|
1月前
|
前端开发 开发者
【第26期】一文读懂React组件编写方式
【第26期】一文读懂React组件编写方式
36 0
|
1月前
|
资源调度 前端开发 JavaScript
React 的antd-mobile 组件库,嵌套路由
React 的antd-mobile 组件库,嵌套路由
64 0
|
1月前
|
存储 前端开发 中间件
React组件间的通信
React组件间的通信
23 1
|
1月前
|
前端开发 应用服务中间件 数据库
react服务端组件
react服务端组件
25 0