1.state和props
相同点:
普通的js对象
包含着影响渲染输出的信息
不同点:
state
组件自己管理数据
控制自己的状态-可变
props
外部传入的数据参数-可变
没有state-无状态组件
多用props
少用state
2.高阶组件HOC-纯组件
接受-个组件并返回一个新组件的函数
因为它们可以接受任何动态提供的子组件,
但不会修改或复制
输入组件中的任何行为 HOC
●代码重用、逻辑和引导抽象
●渲染劫持
●state 抽象和操作
●props处理
3.调用 setState 之后
将传入的参数与之前的状态进行合并,
然后触发所谓的调和过程。
经过调和过程,
会以相对高效的方式
根据新的状态构建 React 元素树
并且着手重新渲染整个 UI 界面。
得到元素树之后
会计算出新的树和老的树之间的差异,
然后根据差异对界面进行最小化重新渲染。
通过 diff 算法,
能够精确制导哪些位置发生了改变以及应该如何改变,
这保证了按需更新,
而不是全部重新渲染。
网友评论