我已经基于material-ui构建了一个UI,其中包含reactJS中的选项卡。每当选择一个选项卡时,该选项卡下的内容将重新加载,这会导致性能问题,因为我在其中一个选项卡下显示了一个iFrame。我尝试使用React.memo来确保屏幕不会重新渲染,因为props没有发生变化,但它仍然会重新渲染。
以下是代码- 代码沙箱链接 是否有一种方法,可以在第一次加载iFrame并在选项卡之间切换时,iFrame不会再次重新渲染?
以下是代码- 代码沙箱链接 是否有一种方法,可以在第一次加载iFrame并在选项卡之间切换时,iFrame不会再次重新渲染?
useMemo
不会导致组件重新渲染,HTML 会在组件挂载时重新加载 iFrame 的源。我已经使用useMemo
制作了一个沙盒,并在其中放置了一个console.count
,您可以检查它只被渲染了一次https://codesandbox.io/s/material-demo-5tigs?file=/demo.js - Sabbin