【发布时间】:2021-05-27 17:08:29
【问题描述】:
我正在尝试更好地理解 React Context API。在docs 的反应中,我偶然发现了这一段:
作为 Provider 后代的所有消费者都将重新渲染 每当 Provider 的 value 属性发生变化时。从传播 提供给其后代消费者(包括 .contextType 和 useContext) 不受 shouldComponentUpdate 方法的约束,因此 即使祖先组件跳过更新,消费者也会更新。
我很难理解这一点,因为我对消费者的定义有点不清楚。如果我尝试创建一个示例 (codingsandbox),结果总是相同的:如果值发生变化,则 Provider 的所有子项(不是消费者)都会重新呈现。
我很想了解上述段落的含义。是否存在上下文值更新而不触发其子项的新渲染(最好在函数组件中)的情况?
【问题讨论】:
标签: reactjs react-context