Я пытаюсь передать несколько параметров между Tab Navigator. Ниже приведена структура моей программы. В полужирном указаны маршруты
App (навигатор по вкладкам): { Main (стек) & Filter (экран )}
Основной (Навигатор стеков): { Домашняя страница (экран) & MediaDetails (экран)}
I иметь на экране кнопку , связанную с Filter , которая имеет функцию onPress () . Я передаю несколько параметров (но давайте рассмотрим только параметр от до ради этого вопроса).
this.props.navigation.navigate('Home', {
to: this.state.to,
}
Теперь на экране, связанном с Home , я читаю параметр внутри состояния, например:
state = {
to: this.props.route.params.to
}
Внутри Приложение. js, I ' установите начальное значение от до равным '2020' следующим образом:
<Stack.Screen
name="Home"
component={HomeScreen}
initialParams={{
to: '2020'
}}
/>
Начальное значение действительно установлено на 2020, Я нажимаю на кнопку. Допустим, я устанавливаю на на 1900 . Непосредственно перед выполнением this.props.navigation.navigate , я console.log (this.state.to) значение и оно действительно обновляется до 1900 . Однако, когда экран меняется на Home , значение возвращается к 2020 (наблюдается через console.log)
Может кто-то указать причину этого пугающего поведения ? Я пытался отладить это в течение многих часов без удачи. React Navigation 5 также довольно нова, поэтому ничего подобного в Интернете найти не удалось. Любая помощь будет оценена. Спасибо за прочтение.
Редактировать: Проблема устранена, полный код удален!