React-Navigation: переход к ранее активному экрану, когда приложение установлено - PullRequest
0 голосов
/ 25 июня 2019

а) Пользователь переходит к некоторому экрану B в приложении. Фоны приложения.

б) Пользователь открывает приложение -> приложение всегда открывается в initialRouteName (Загрузка -> первый экран в Tab Navigator «Экран A»). Это неожиданно, поскольку ранее использовалось на экране B.

Аналогично, при открытии приложения из уведомления вызывается маршрут загрузки, который затем перенаправляет на первый экран TabNavigator. Я думаю, что я мог бы сохранить историю навигации, а затем проверить предыдущее состояние экрана при открытии с переднего плана на экране «Загрузка». В случае уведомлений я мог бы сохранить параметры уведомлений, а затем вытащить параметры уведомлений из хранилища, чтобы направить пользователя на эту конкретную страницу. Это кажется очень громоздким, и мне интересно, есть ли лучший способ.

//Navigator
const SwitchNavigator = createSwitchNavigator(
  {
    TabNavigator,
    Auth,
    Loading
  },
  {
    initialRouteName: "Loading"
  }
);

//Loading.js
componentDidMount() {
   signedIn ? this.props.navigation.navigate(TabNavigator)
       : this.props.navigation.navigate(Auth)
  }
...