获得徽章 0
- 我们经常可以在代码中看到胡乱使用 useMemo 的例子,例如对于非常简单的计算逻辑许多开发者也会使用 useMemo 来进行包裹,然而 useMemo 并非没有消耗,它会依次对比 deps 看是否有变化来决定是否复用上一次的计算结果,以及需要缓存相关的状态到 Fiber Node 上。
React 官方的建议是如果你不知道怎么用你可以使用 console.time 来测量代码的执行时间,如果时间大于等于 1ms 则代表添加 useMemo 来缓存计算结果是有意义的。展开评论4
![[可怜]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_5.ece2a96.png)
![[不看]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_102.b113c42.png)
![[v5]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_130.2e42cc3.png)
![[给力]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_129.0b59244.png)