React StrictMode 双渲染排查应该怎么做
· 阅读需 2 分钟
React 18 上线后,不少项目第一次在开发环境里看到副作用执行两次,直觉都会觉得“框架是不是出问题了”。但我自己的经验是,StrictMode 暴露的往往不是框架 bug,而是我们本来就没处理好的副作用和初始化假设。
React 18 上线后,不少项目第一次在开发环境里看到副作用执行两次,直觉都会觉得“框架是不是出问题了”。但我自己的经验是,StrictMode 暴露的往往不是框架 bug,而是我们本来就没处理好的副作用和初始化假设。

只要页面里有中大型列表,性能问题迟早会出现。很多人这时会本能地去加 memo、useMemo、useCallback,但我越来越觉得,真正决定列表是否好维护的,往往不是有没有做缓存,而是渲染边界有没有拆清楚。
React 18 的并发能力第一次接触时最容易让人兴奋,但真正写进业务后,我觉得最难的不是 startTransition 这个 API,而是你到底知不知道哪些更新应该立刻响应,哪些更新可以稍微“让一下”。