useState

作者: 一土二月鸟 | 来源:发表于2020-08-17 13:47 被阅读0次
  • setState参数为字面量对象/值和函数的区别?
    1. 如果传入字面量对象或hooks里的值,会将state合并,使用最后一个state作为本次渲染的值。
    2. 如果传入的是回调函数,回调函数里的参数为上一个state的值。
  • special
    • 在异步请求或setTimeout有副作用的回调中,setState为同步代码
  • 以上特性同样适用于class组件
import React, {Component} from 'react';
import ReactDOM from 'react-dom';


class Test extends Component {

  state = {
    a: 0
  }
  
  componentDidMount(){
    this.setState({a : 1});
    this.setState({a : 2});
    console.log(this.state.a); // 0  异步代码导致
    this.setState(state => console.log(state.a)); // 2 适用于规则1 2

    setTimeout(() => {
      this.setState({a: 10}); // 同步代码为导致页面立即渲染
      console.log(this.state.a); // 10 
      this.setState({a: this.state.a + 1});  // 同步代码为导致页面立即渲染
      console.log(this.state.a); // 11
    }, 1000);
  }

  render(){
    console.log(999); // 一共会打印四次
    return <>1</>
  }
}

ReactDOM.render(<Test />, document.getElementById('root'));

相关文章

  • React Hooks——useState的源码流程

    React Hooks——useState 源码版本 16.8 useState 流程示意图 从useState源...

  • React Hooks

    一.useState 提示: useState 最好是在最顶层调用, 组件每次渲染的 useState 数量必须...

  • React Hooks

    一.useState hooks就是在函数组件中使用state通过useState实现的。 useState传入一...

  • 01-React-hooks-useState基本使用

    React-hooks-useState useState的基本用法 格式: 初始状态 useState的第一个参...

  • React-Hooks之保存状态和生命周期

    1.保存状态(useState) useState(initialState) 的参数 initialState ...

  • useState 实现原理

    useState 熟悉hooks的都知道,最常用的useState 大概用法 简单的实现一个useState 先模...

  • hook useEffect

    useState 最简单的 useState 用法是这样的:function Counter() { var [...

  • 常用React Hooks 方法

    useState 使用状态 const [n, setN] = React.useState(0)const [u...

  • reactHooks的使用

    useState的使用 在reactHooks中useState代替了原本的state,const [age,se...

  • Hooks

    useState 说明: 通过useState来定义数据,以及修改方式(即:set方式) 如上:loading即为...

网友评论

      本文标题:useState

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