React 中的组件如何检测到 state 的改变?

如题,有关 React 组件的原理实现。

  1. React 组件 state 发生变化时,组件进行更新、渲染。然而,组件又是在何时、通过何种方式获知 state 的改变?
  2. state 类型不同(例如 stringobjectarray)时,又会有怎么样的表现?

注:不是在问 react 组件渲染的原理,侧重点在 获知并开始渲染

阅读 5.9k
2 个回答

1.state更新的时候是调用的setState方法啊,调用了setstate方法说明state更新了。那这个是肯定要获取更新后的state,然后走更新的生命周期函数。不像vue一样,是用defineProperty定义了属性,一开始就收集好了依赖,那么你设置属性的时候就会触发更新

这个问题没看懂?
你问题组件如何渲染,却侧重点获知并开始渲然。问题描述中,你又知道,当state变化时,组件会render
好矛盾。

建议你,先写代码吧,能实现一些功能后,再尝试理解这些概念性的东西。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题