🧠 The useEffect Mind Virus Must Be Defeated

Почему стоит обновиться на React 19, даже если вы просто делаете SPA:

💡 Проблема: асинхронность и баги

В классическом подходе, как в примере с setTimeout, за 2000мс может произойти что угодно: • Компонент может анмаунтиться. • Могут измениться пропсы. И самое страшное: код в setTimeout этого не узнает.

🛠 Решение: useOptimistic и useTransition

React 19 привносит новые хуки, которые упрощают работу с состояниями: • Транзишины позволяют “задерживать” обновления через промисы, а React берёт на себя координацию. Это устраняет баги, рассинхронизацию UI, мерцания и другие проблемы. • useOptimistic упрощает управление временными состояниями.

🎯 Зачем нужен useOptimistic?

1️⃣ Позволяет использовать await прямо в обработчиках, например, в onClick. 2️⃣ Избавляет от сложностей с состоянием промиса — меньше useState, useEffect и беспорядка в коде. 3️⃣ Обеспечивает только временное обновление интерфейса без создания долгосрочных состояний.

Ключевой инсайт: С переходом на React 19 состояние после завершения транзишина автоматически возвращается к исходному — без лишнего кода и головной боли.

Новый React помогает устранить хаос в асинхронном коде. 🚀

🧠 The useEffect Mind Virus Must Be Defeated
Почему стоит обновиться на React 19, даже если вы просто делаете SPA:
💡 Проблема: асинхронность и баги
В классическом подходе, как в примере с setTimeout, з... | Сетка — социальная сеть от hh.ru 🧠 The useEffect Mind Virus Must Be Defeated
Почему стоит обновиться на React 19, даже если вы просто делаете SPA:
💡 Проблема: асинхронность и баги
В классическом подходе, как в примере с setTimeout, з... | Сетка — социальная сеть от hh.ru