История не сохраняется в одном компоненте с другими параметрами маршрута в React JS

Я работаю над приложением реагировать JS для Windows Mobile. Моя конфигурация маршрута как ниже

<Route path='/' component={App} >
  <IndexRedirect to='/shows/1' />
  <Route path='shows/:id' onEnter={bootStrap} component={ShowsPage} />
  <Route path='settings' component={Settings} />
  <Route path='devices' component={Devices} />
</Route>

У меня есть 3 вкладки в первом маршруте, чьи URL будут что-то вроде

shows/1
shows/2
shows/3

Я использую React-роутер и вкладки являются вкладками, такими как

<li key={tab}>
   <Link to={`/shows/${tab}`} className={classes.tabs} activeClassName={classes.active}>{tab}</Link>
</li>

Как я ориентируюсь? Когда я запускаю приложение, первая страница будет shows/1 и если я нажму на второй вкладке, то маршрут будет shows/2,

Что происходит в браузере? Когда я запускаю приложение в браузере, я вижу show /1, и если я нажимаю на вторую вкладку, я вижу, что URL меняется на shows/2, Здесь, когда я нажимаю кнопку "Назад" браузера, происходит переход к шоу /1. И когда я иду на страницу настроек из shows/2 и нажмите на кнопку браузера назад, когда я нахожусь на странице настроек, я могу увидеть shows/2 страница, которая совершенно в порядке.

Что происходит в устройстве? Когда я запускаю приложение на устройстве, я вижу show /1, и если я нажимаю на вторую вкладку, я вижу содержимое второй вкладки (show /2). Здесь, когда я нажимаю кнопку возврата устройства, приложение закрывается. И когда я иду на страницу настроек из shows/2 и нажмите кнопку возврата устройства, когда я нахожусь на странице настроек, я могу увидеть shows/2 страница, которая совершенно в порядке.

В чем проблема? Я чувствую, что в устройстве навигация не сохраняется, если я перехожу с одной вкладки на другую, которая по сути является одним компонентом.

Что я пробовал? Я пытался удалить Link с вкладки и добавил событие клика, а в обработчике клика я использую приведенный ниже код, но бесполезно.

this.props.router.push('/shows/' + showId)

Какое должно быть поведение? В устройстве, если я сошел с shows/1 в shows/2и если я нажму на кнопку возврата устройства из shows/2 тогда я должен быть в состоянии пойти в shows/1 вместо выхода из приложения.

Буду благодарен за любую помощь.

0 ответов

Другие вопросы по тегам