- StackScreen11
- StackScreen12 (я тут)
- TabScreen2
[StackNavigator2]
- StackScreen21
- StackScreen22 (нужно сюда)
делаю naviagtion.navigate(«TabScreen2», { screen: «StackScreen22», params: { text: «123» } }), и все хорошо
но если оставить открытым StackScreen22 на TabScreen2 и перейти на TabScreen1, то при повторном вызове с другим текстом - StackScreen22 не обновляется относительно новых данных.
как такое фиксить?
Попробуй добавить слушатель на фокус экрана, в нем бери актуальные данные из params и сохраняй их в стейт
добавь в зависимости useEffect параметры, которые изменяются и записывай их оттуда в стейт
такое как раз не хочет работать. вообще не приходят новые данные в route.params если этот екран уже открыт
в сам params ничего не приходит если екран открыт. в этом соль
https://reactnavigation.org/docs/use-focus-effect/ попробуй это использовать
покажи код, как params достаешь
https://reactnavigation.org/docs/use-route/
initial: false, добавь ключ
у тебя там случайно нет React.memo?
есть но не на orderId который я жду. orderId жду в useEffect
https://reactnavigation.org/docs/screen/#children попробуй функцию отдать в навигаторе
оч странно, у меня тоже есть скрины, в которые передаются данные и все работает без танцев с бубном
везде все хорошо, только в этом кейсе такая шляпа. кажется уже догадываюсь почему
Обсуждают сегодня