gpt4 book ai didi

javascript - this.forceUpdate 是否重新渲染所有子项?

转载 作者:行者123 更新时间:2023-12-03 09:43:50 24 4
gpt4 key购买 nike

文档对 forceUpdate 的描述如下:

Calling forceUpdate() will cause render() to be called on the component, skipping shouldComponentUpdate(). This will trigger the normal lifecycle methods for child components, including the shouldComponentUpdate() method of each child. React will still only update the DOM if the markup changes.

https://reactjs.org/docs/react-component.html#forceupdate

这是否意味着组件的子组件也调用了渲染函数?

最佳答案

它将“重新渲染”每个在其 shouldComponentUpdate 方法中不返回 false 的子级,但是请注意 re-rendering !== re-drawing,它只会导致 React 的 diffing 算法运行。

并且仅当差异算法发现当前版本的虚拟 DOM 与先前版本的虚拟 DOM 存在差异时,才会在屏幕上重新绘制 UI 的特定“更改”部分。

关于javascript - this.forceUpdate 是否重新渲染所有子项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46975333/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com