useMemo вычисляется во время рендера и должен оставаться чистым; побочные эффекты выполняют в обработчиках или эффектах.
На каком этапе жизненного цикла выполняется useMemo и где следует выполнять побочные эффекты?
useMemo вычисляется во время рендера и должен оставаться чистым; побочные эффекты выполняют в обработчиках или эффектах.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
useMemo вычисляется во время рендера и должен оставаться чистым; побочные эффекты выполняют в обработчиках или эффектах.
React может повторить или отбросить вычисление, поэтому внутри нельзя отправлять запросы, менять DOM или внешнее состояние. useMemo — оптимизация, а не гарантия единственного запуска и не место для управления жизненным циклом ресурсов.