brevno10
@brevno10
Бревно на 10

NextJS 13+, есть ли смысл использовать «глобальные провайдеры» прям в layout?

Главная особенность next js четкое разделение серверных и клиентских компонентов, но (далее субъективное рассуждение, по нему и нужен комментарий) в тот момент когда мы добавляем контекст или любой другой провайдер (редакс), то все последующие компоненты становятся клиентскими согласно документации.

Кратно документация: все компоненты по умолчанию серверные, и генерятся на сервере и отдаются статикой html, но в тот момент когда мы объявляем компонент клиентским, ВСЕ последующие дочерние компоненты становятся клиенсткими

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

Запутался...
  • Вопрос задан
  • 98 просмотров
Пригласить эксперта
Ответы на вопрос 1
brevno10
@brevno10 Автор вопроса
Бревно на 10
Good to know: You should render providers as deep as possible in the tree – notice how ThemeProvider only wraps {children} instead of the entire document. This makes it easier for Next.js to optimize the static parts of your Server Components.
https://nextjs.org/docs/getting-started/react-esse...

"вы должны отображать провайдеров как можно глубже в дереве" - вот что путает в документации. То есть заявляются чтобы контекст держали поближе к "клиентским" компонентам, а далее приводят пример как прокинуть провайдер прям с лаяута, нарушая свою же логику
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы