react 这个技术栈到底是如何做到每天都有新发现的?

第一次点击按钮,组件重新渲染,输出'render',此时 count 为 1 ( count: 0 -> 1) 第二次点击按钮,组件重新渲染,输出'render',此时 count 为 1(count: 1 -> 1) 第三次点击按钮,组件不重新渲染(count: 1 -> 1) 第四次...第五次...
react 这个技术栈到底是如何做到每天都有新发现的?
react 这个技术栈到底是如何做到每天都有新发现的?
  1. 第一次点击按钮,组件重新渲染,输出'render',此时 count 为 1 ( count: 0 -> 1)
  2. 第二次点击按钮,组件重新渲染,输出'render',此时 count 为 1(count: 1 -> 1)
  3. 第三次点击按钮,组件不重新渲染(count: 1 -> 1)
  4. 第四次...第五次,都不会重新渲染

就...当 setCount 的值即使和当前 count 值一样,组件是否会重新渲染,竟然不一定,还要看当前 count 值的上一次渲染...如果是 0 -> 1,那么在 setCount(1)会渲染,如果是 1 -> 1 ,那么就不会再渲染...

来源: V2EX - 技术查看原文