Навигация между экранами

Объект navigation автоматически передаётся каждому компоненту-экрану в React Navigation. С его помощью можно управлять переходами и изменять состояние навигационного стека.

Основные методы

navigation.navigate(name, params?) — выполняет переход на экран с указанным именем. Если такой экран уже есть в стеке, навигация перейдёт к нему без создания дубликата. Вторым аргументом можно передать параметры:

navigation.navigate('Profile', { userId: 42 });

navigation.goBack() — возвращает пользователя на предыдущий экран. Эквивалентно нажатию системной кнопки «Назад» или жесту свайпа (на iOS).

navigation.replace(name, params?) — заменяет текущий экран на новый. Пользователь не сможет вернуться назад на заменённый экран, так как он удаляется из стека:

navigation.replace('Login');

navigation.popToTop() — возвращает пользователя к первому экрану в стеке, удаляя все промежуточные экраны. Полезно, например, после завершения многошагового процесса.

Эти методы работают в пределах одного навигатора (например, одного Stack.Navigator). Для переходов между разными навигаторами (например, из стека во вкладку) требуется дополнительная настройка, которая выходит за рамки базовой навигации.