TGViewer
Free React For Beginners Free React For Beginners @reactbeginners · 3.04K subscribers
Post #644 2.9K
Явно погані практики в #React, або що НЕ варто робити без особливих причин

1. Збереження даних в стейті, які можна вирахувати. Якщо дані можна порахувати під час рендеру, просто зробіть це, не треба їх десь зберігати.

2. Використання useEffect для даних, які можна вирахувати. Вам не потрібен useEffect для того щоб порахувати дані - це можна зробити прямо в рендері.

3. Відсутність відписок в useEffect від асинхроних запитів, timeout-ів, подій через .addEventListener. Просто гарна практика яка може врятувати вас від memory leaks, особливо з interval та подіями.

4. Використання useCallback та useMemo без попередніх вимірювань. Використання useCallback та useMemo ускладнює читання вашого коду  - ви зобов'язані пересвідчитись що воно того варте.

5. Збереження локальних даних в глобальному стейті. Всі локальні дані, що потрібні одному компоненту повинні лежати лише локально - не захаращуйте глобальний стейт зайвим, вам з ним ще далі жити.

6. Використання випадкових ключів в списках, або не використання ключів взагалі. Зміна ключа призводить до видалення компоненту з DOM дерева і створення його заново. Це дорого, користуйтеся ключами правильно.

7. Оголошення структур які не залежать від компоненту в самому компоненті (функції, словники, тощо) . Якщо ви можете викинути щось з компоненту просто перемістивши його - зробіть це. Код стане простіше читати і він стане навіть трохи швидше.

8. Використання context-у для швидкозмінних даних (mousemove, scroll, etc). Зміна контексту змушує перерендерюватися усі компоненти що його використовують, а ці події спрацьовують сотнями. Воно вам треба?

Якщо якийсь пункт треба розкрити детальніше - пишіть під постом.

Плейліст присвячений цій темі

Бережіть себе, допомагайте ЗСУ


@reactbeginners
  • 👍 72
  • 🔥 6
More from @reactbeginners
  1. Sep 29, 2026Як і обіцяв - про БЗВП по свіжих слідах (і заодно про процес). У знайомого злетіло бронюва…
  2. Sep 26, 2026Думаю багатьом буде цікаво щось дізнатися про розробоку в ЗСУ Спробою розповісти трохи тог…
  3. Sep 24, 2026Всім привіт. Давно не бачилися, але до телеграму руки все ніяк не доходили. В лінкедині я…
  4. May 24, 2026Київ, співчуваю. Сам сьогодні в цю ніч був на лукьянівці. Як на мене, найважча ніч за всі.…
  5. Dec 31, 2025З новим Роком. Нехай це буде останній рік війни. А росія нехай отримує те на що заслужила.…
  6. Nov 29, 2025Сподіваюся всі живі. Схоже що це був рекордний наліт. Як бачите - путін не зацікавлений в…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →