Ваш вопрос, по-видимому, указывает на то, что «первый setState» - это setState, вызываемый в запросе на выборку, а «второй setState» - это setState, вызываемый в методе getCurrentPosition в навигаторе. В соответствии с этим у меня есть некоторые ответы и предложения.
Это проблема с вашим кодом, являющимся асинхронным . Как вы можете видеть, вызывается выборка, а затем после ее завершения устанавливает состояние независимо от широты и долготы. Второй вызов не является асинхронным вызовом, он вызывается, как только вызывается componentDidMount.
По сути, второй вызов setState фактически вызывается первым, как только компонент монтируется, и ТОЛЬКО первый setState перезаписывает его после завершения выборки.
Чтобы исправить это, я бы предложил перестроить вашу методологию работы этой функции. Асинхронный вызов всегда будет заканчиваться вторым, и поэтому вы можете изменить значения по умолчанию.