Как стать автором
Обновить

Комментарии 4

О, у меня один вопрос по контекстам

В большом проекте есть App state manager - RTK, Mobx, ну их там прорва

И вот тут вопрос - зачем нужен контекст, если уже есть централизованный App State?


Я для себя нашел примерный вариант ответа, но хотелось бы другие точки зрения

Потому что контекст — это не хранилище данных, а средство их доставки. Даже в примере автора в качестве стора выступает useState.

Вот только в вашем примере контекст будет всегда создавать новый объект. Соответственно даже без изменений переменных будет вызывать ререндер всех компонентов, которые используют ваш контекст даже если они обернуты в мемо.
https://codesandbox.io/p/sandbox/react-typescript-forked-n75jzp

Но у хука useMemo тоже есть свои особенности.

Желательно было бы объяснить как правильно пользоваться контекстом, что бы избегать повторных рендеров. Например сделать два контекста, вложить один контекст в другой. Один использовать для значений, второй для функций. Тогда это было бы очень полезная статья для начинающих.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории