Как организовать стейт-менеджмент при множественных фильтрах (дата, поиск, статус)?
Как работает suspend-функция под капотом (стейт-машина)?
Как можно объединить обновления нескольких стейтов в один ре-рендер в React 17?
Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Рейтинг:
2
Сложность:
5
Используйте:
Единый State с полями для каждого фильтра.
Отложенное применение (debounce для поиска).
Изоляцию логики фильтрации в отдельный класс.
Рейтинг:
2
Сложность:
6
Компилятор разбивает suspend-функцию на стейт-машину, где каждый suspend-вызов — это состояние. При возобновлении выполняется переход к следующему состоянию.
Рейтинг:
3
Сложность:
6
В React 17 можно использовать ReactDOM.unstable_batchedUpdates() для группировки нескольких обновлений состояния в один ре-рендер. Также в некоторых случаях автоматическое батчинг работает в обработчиках событий React. В React 18 батчинг работает автоматически во всех сценариях, включая асинхронные операции.