React 实用基础合集(2)

341 阅读1分钟

1、setState 为何使用不可变值 ?

1、概述 image.png

2、不可变指的是 函数式编程思想 纯函数

  • array.concat 返回新数组 但旧数组 未变化 slice fliter forEach 也是一样
  • array.push pop splice 更改了 数组本身 会违反 不可变值

image.png

  • 常规 操作对象的思路 image.png

2、setState是异步 ?

* 注意 不管是 自定义事件还是 setTimeout 定时任务 都需要 手动销毁
  • 直接使用 this.setState 是异步的 image.png

image.png

  • 在 setTimeout 中 setState是同步的

image.png

  • 自定义事件中 同步

image.png

3、setState会合并state ?

image.png

image.png

image.png

4、生命周期 ?

1、官网

image.png

image.png

5、总结 ?

image.png

image.png

image.png