防止某些组件重新渲染

问题描述 投票:0回答:2

我正在使用react-hooks。所以有一个模式弹出一堆输入(组件),如文本字段,下拉菜单,日期选择器等...问题是当一些字段正在编辑时,我的所有表单组件都被重新渲染这使我的形式非常缓慢。我完全理解为什么会这样。但是,我想在我的表单中编辑一些输入时找到一种方法,所有其他输入字段(组件)应该保持“冻结”而不是重新渲染。否则,使用至少有20个输入字段的表单会使工作变得非常慢......

非常感谢您的帮助!

reactjs react-hooks
2个回答
0
投票

你可以使用Uncontrolled components。它不使用setState,因此在键入某个输入值时不会重新呈现它。然后,您可以在提交表单时发送所有内容。


0
投票

尝试使用React.memo,它在某种程度上等同于shouldComponentUpdate

Check React.memo documentation

© www.soinside.com 2019 - 2024. All rights reserved.