Как добавить новый компонент на экран с другого экрана в React Native/Навигация?

#react-native #react-navigation #react-navigation-v5

Вопрос:

Я относительно новичок в реагировании/Родной/навигации в целом, и я создаю свое первое приложение. Как говорится в названии, я не знаю, как я мог бы добавить новый компонент на экран из другого.

Кнопка на экране A, пожалуйста, игнорируйте кнопку выше «Получить глобальную переменную».:

Кнопка на экране A, пожалуйста, игнорируйте кнопку выше quot;Получить глобальную переменнуюquot;.

Что я хотел бы сделать, так это иметь возможность добавить еще одну кнопку под ней, когда функция вызывается с другого экрана.

Например, на экране B у меня есть кнопка с надписью «Подтвердить», которая добавит первую кнопку на экран A. Нажав несколько раз «Подтвердить», я хотел бы добавить больше кнопок на экран A.

Я не уверен, возможно ли это, и не знаю, как это сделать. Чтение документации до сих пор мне не помогло.

Для справки, это код для «Подтверждения».

   <Button 
    title="Confirm" 
    onPress={() => {
      navigation.navigate({
        name: 'ScreenB',
        params: { 
          placeholder: box("placeholder"),
        },
        merge: true
      });
    }}
    />
 

Комментарии:

1. Вот тут-то и вступает в игру государственное управление. Вы можете использовать контекст, к которому оба экрана A и B имеют доступ, или использовать библиотеку управления состоянием, такую как Mobx-Дерево состояний или Redux.

Ответ №1:

Вы можете попытаться сохранить, сколько раз пользователь нажимал кнопку подтверждения на экране B, а затем при переходе на экран A вы можете передать это значение в качестве параметра навигации, а затем прочитать это значение на экране A. Затем просто отобразите это количество кнопок на экране A.