React Context — исключительно полезный инструмент для передачи данных через дерево компонентов без необходимости пропсов на каждом уровне. Однако его неграмотное использование может привести к катастрофическим последствиям для производительности приложения. Разберёмся, как избежать лишних перерисовок.
Как React Context влияет на производительность
Когда значение в Context Provider изменяется, React перерисовывает всех потребителей этого контекста — всех потомков, использующих useContext
для данного контекста. Это особенность механизма реагирования.
Пример проблемной реализации:
...