Если вы используете вложенные навигаторы, вы можете использовать этот код для получения текущего состояния активного экрана
const getActiveRouteState = function (route: NavigationState): NavigationState {
if (!route.routes || route.routes.length === 0 || route.index >= route.routes.length) {
return route;
}
const childActiveRoute = route.routes[route.index] as NavigationState;
return getActiveRouteState(childActiveRoute);
}
Использование:
const activeRoute = getActiveRouteState(this.props.navigation.state);
Я использую это, когда мне нужно получить текущее состояние активного экрана из NavigationDrawer.