Вы можете рекурсивно встраивать компоненты, если они визуализируются Маршрутом - тогда вы можете проверить this.props.match
для имени пути, например, в базовом Маршрутизаторе у вас будет базовый маршрут, /blog/:date
, который рендеринг компонента Home.
Затем внутри компонента Home вы можете визуализировать другой маршрут (он все еще работает отсюда, несмотря на то, что он не является непосредственным дочерним элементом маршрутизатора) с настройкой, подобной
<Route path={`${this.props.match.url}/:folder`} component={Folder} />
Затем внутри компонента Folder вы будете отображать тот же маршрут, который будет постепенно отображать подкомпоненты для каждого /:folder
в пути.
Объект match
также включает в себя isExact
, который можно использовать для определения того, находитесь ли вы на последнем уровне структуры папок по URL-адресу.
Источник: см. этот пример встроенных маршрутов.