zoukankan      html  css  js  c++  java
  • react setState

    setState()的调用可能是异步的,如果像下面这样来计算下一个值可能是错误的:

    // Wrong
    this.setState({
      counter: this.state.counter + this.props.increment,
    });

    要解决它,使用setState()接受函数而不是对象的第二种形式该函数将接收先前的状态作为第一个参数,并将应用更新时的props作为第二个参数:

    // Correct
    this.setState((prevState, props) => ({
      counter: prevState.counter + props.increment
    }));

    当然箭头函数也可以像常规函数一样使用:

    this.setState(function(prevState, props) {
      return {
        counter: prevState.counter + props.increment
      };
    });
  • 相关阅读:
    Uva11988
    Uva140
    子集生成
    Uva129
    Uva524
    Uva10976
    Uva11059
    Uva725
    HDU4268(贪心+multiset)
    HDU2034(set水题)
  • 原文地址:https://www.cnblogs.com/dyx-wx/p/6593004.html
Copyright © 2011-2022 走看看