Closed skyliwq closed 6 months ago
页面多了会不会有性能问题?
不会的,它是利用Suspense的fallback切换机制,当组件失活之后,是不会参与diff的。
可以看到当child挂起的事后,Suspense将渲染fallback,对应到这里是一个空的fragment,所以基本上是没有性能开销的
@skyliwq
是不是child挂起流程的时候,child的dom状态不会消失?
还有为什么使用stratTranstion改变状态会导致无法隐藏?
是不是child挂起流程的时候,child的dom状态不会消失?
是的,当children挂起时,state和ref状态不会丢失,useEffect的销毁函数也不会执行,dom会设置为display none
还有为什么使用stratTranstion改变状态会导致无法隐藏?
由于react的限制,并发模式下再次挂起不会显示回退,所以建议切换为非并发模式,另外我会新增dev环境下的警告
@cdx111
页面多了会不会有性能问题?