У меня есть приложение, в котором у меня есть N
различные макеты (например, BeforeLogin
, MainLayout
, SomeElseLayout
и т. Д.).
Каждый макет представляет собой компонент разметки HTML, который долженобернуть компонент страницы, например Settings
, Profile
и т. д.
Мне нужно иметь возможность назначить конкретный макет для каждого из моих маршрутов (или групп маршрутов).
Например, я хочу, чтобы URL
/register
/info/*
/about
... использовал BeforeLogin
компонент макета (быть потомками), а
/dashboard
/profile/*
/settings/*
... использовать MainLayout
.
Кроме того, некоторые URL-адреса, например /
, могут использовать один макет перед входом пользователя, а другой - после.Но я полагаю, что этого можно будет достичь с помощью условного рендеринга, как только будет дан ответ на главный вопрос.
Итак, вопрос в том, как мне это сделать?
(кроме, конечно, рендеринга макета внутри каждого компонента страницы явно, я бы предпочел, чтобы мои компоненты были независимыми от макета)
Спасибо!
PS Для тех, кто пропустил, вопросо Reach router
, а не React Router
.