React05state变量渲染和setState修改数据

  • 在组件里面我们通过{}在jsx里面渲染变量
  • 如果数据需要修改,并且需要页面同事响应改变,那就需要把变量放在state里面,同时使用setState修改
  • 初始化状态state
      
  • 更新状态使用setState,不能直接this.state.count = xxx
        
  • 注意事项
       《1》setState是异步的,底层设计同一个生命周期会批量操作更新state,这涉及到性能优化问题,所以设计成异步的。
        《2》setState第二个参数是一个可选参数,传入一个回调函数可以获取到最新的state。
        《3》当修改的state依赖上一次修改的state的值时,可以用以下这种方法修改。
    
 备注:setState的参数不止是可以直接写成对象,还可以写成函数,第一参数写成函数,函数的参数可以拿到上一次的state和prop值。第二个参数是一个函数,可以获取到修改后最新的state。
 
  •   注意setDate是异步更新的。 所以打印的还是旧的数据。要想拿到更新后的最新数据,就在第二个参数回调函数里拿。
 
  • 如果修改的state是依赖上一次更新的state,则这样写:
      ,在箭头函数里面只有一句则这样写:
 
   
 
posted @ 2020-01-02 13:16  Godfi  阅读(458)  评论(0编辑  收藏  举报