Я пытаюсь создать приложение с реагирующей нативной и реагирующей навигацией, чтобы изменение чего-либо на одном экране изменило его на другом.
Пока что единственный способ синхронизировать данные между двумя экранами - использовать кнопки с onPress={() => navigate('OtherScreen', this.state)}
. Это имеет две проблемы. Во-первых, это работает только там, где я явно вызываю навигацию - когда я провожу пальцем, чтобы изменить экран, он не будет передавать данные. Но в большинстве случаев это просто противоречит философии реакции, согласно которой данные должны извлекаться из модели с помощью вызова рендеринга, а не из одного метода рендеринга, передающего данные в другой компонент.
Это полностью поставило меня в тупик. Мое текущее «решение» - записать все приложение в одном файле, чтобы все было в одной области, и я мог использовать глобальную переменную для хранения глобального состояния.
Я не могу быть первым, кто столкнулся с этой проблемой, и мне трудно представить, что у реакционно-родного не было бы какого-либо встроенного метода для определения хранилища данных в масштабе приложения.
Существует ли стандартная схема общего доступа к данным в реагирующей нативе?
Как мне синхронизировать данные между двумя экранами?