Из-за Redux-подписки — обычно нет, если useSelector возвращает прежнюю ссылку data. Изменение isLoading само по себе недостаточно.
Если в Redux-редюсере есть data, isLoading и error, а компонент выбирает только data, будет ли он перерендериваться при изменении isLoading?
Из-за Redux-подписки — обычно нет, если useSelector возвращает прежнюю ссылку data. Изменение isLoading само по себе недостаточно.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Из-за Redux-подписки — обычно нет, если useSelector возвращает прежнюю ссылку data. Изменение isLoading само по себе недостаточно.
По умолчанию useSelector сравнивает прежний и новый результат через строгое равенство. Если редюсер без причины создаёт новый массив data или selector каждый раз возвращает объект-обёртку, результат изменится и обновление возможно. Компонент также может рендериться из-за родителя, локального состояния или контекста: это отдельные причины.
Источник: react-redux.js.org.