Как создать бесконечный цикл маршрутизатора - PullRequest
0 голосов
/ 28 мая 2018

Мне нужно создать экран с профилем пользователя, в котором я должен видеть пользователей, подписанных им (и тех, кто подписался на него).После нажатия на одну из них я должен перейти к экрану своего профиля, где я могу видеть пользователей, подписанных им и т. Д. Кроме того, при нажатии назад (либо стрелка просмотра стека, либо кнопка возврата назад) я должен вернуться на экран за экраном.Как этого добиться?Я пробовал пару вещей, но ничего не получалось ...

Это маршруты, которые я придумал:

export const SubscribbedRouter = createStackNavigator(
    {
        Subscribbed: {
            screen: SubscribbedScreen
        }
    }
);

export const SubscribbedByRouter = createStackNavigator(
    {
        SubscribbedBy: {
            screen: SubscribbedByScreen
            }
        }
    }
);

export const ProfileSwitchRouter = createSwitchNavigator(
    {
        SubscribbedRouter,
        SubscribbedByRouter
    }
);

export const ProfileRouter = createStackNavigator(
    {
        Profile: {
            screen: ProfileSettingsScreen
        },
        ProfileSwitch: {
            screen: ProfileSwitchRouter
        }
    }
);

1 Ответ

0 голосов
/ 29 октября 2018

Вам придется использовать push вместо навигации

Это позволяет вам выразить намерение добавить другой маршрут независимо от существующей истории навигации.

this.props.navigation.push ('Детали')

Каждый раз, когда вы вызываете push, он добавляет новый маршрут в стек навигации.Когда вы вызываете навигацию, он сначала пытается найти существующий маршрут с этим именем и проталкивает новый маршрут только в том случае, если его еще нет в стеке.

Подробнее вы можете прочитать здесь https://reactnavigation.org/docs/en/navigating.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...