[react] React为什么不要直接修改state?如果想修改怎么做?

Posted 前端小歌谣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[react] React为什么不要直接修改state?如果想修改怎么做?相关的知识,希望对你有一定的参考价值。

[react] React为什么不要直接修改state?如果想修改怎么做?

有时表现出异步,有时表现出同步
1:在合成事件和钩子函数当中是异步的,在原生事件和setTimeout当中是同步的
2:异步并不是说内部是由异步代码组成,本身的执行过程和代码都是同步的,只是合成事件和钩子函数的调用在更新之前,导致拿不到数据形成所谓的异步,可以通过setState的第二个参数(是个回调函数,拿到更新数据)
3:批量优化也是建立在异步上面,在原生事件和定时事件中不会批量更新,
4:合成事件(就是我们给那些元素绑定点击事件等等都属于合成事件) 

   个人简介

我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论





主目录

与歌谣一起通关前端面试题

以上是关于[react] React为什么不要直接修改state?如果想修改怎么做?的主要内容,如果未能解决你的问题,请参考以下文章

react学习笔记2之正确使用状态

React 的 setState(),嵌套结构的数据变异,为啥不直接修改状态呢?

不要直接改变状态,在 React JS 中使用 setState() react/no-direct-mutation-state

Taro+react开发--不要修改mode属性

react

react中的DOM操作