Я работаю над проектом React и столкнулся с проблемой.В основном мое приложение использует представление панели мониторинга по большинству путей, за исключением этих:
Я хочу направить эти маршруты с помощью регулярного выражения, но до сих пор я только мог заставить его работать с корневым каталогом.
Вот мой текущий код:
render() {
return (
<div>
<ScrollToTop>
<Switch>
<Route path="/" component={HomePage} exact />
<Route path="/signin" component={SignIn} />
<Route path="/signup" component={SignUp} />
</Switch>
<Route
path="/(.+)"
render={() => (
<React.Fragment>
<ResponsiveMenu />
<Header />
<SidePanel profile={profile} />
<HamburgerMenu />
<div className="container-dashboard">
<Switch>
<Route exact path="/dashboard" component={Dashboard} />
<Route path="/log" component={LogDashboard} />
</Switch>
</div>
</React.Fragment>
)}
/>
</ScrollToTop>
</div>
);
Мой вопрос: могу ли я добиться этого с помощью регулярного выражения?Если так, какое регулярное выражение мне нужно использовать (я сосу с RegEx)?
А если нет, как я могу заставить это работать?Должен ли я создать компонент (WithDashboard), который принимает другой компонент в качестве реквизита и отображает компонент внутри div панели мониторинга вместе с заголовком и боковой панелью?Или мне следует использовать компонент более высокого порядка withRouter () и использовать имя props.location.pathname?