Сделать сцену доступной в других вкладках - React Native Router Flux - PullRequest
0 голосов
/ 20 февраля 2019

Я получил настройки вкладок следующим образом:

<Router>
            <Stack key="root">
                <Scene
                    key="tabbar"
                    tabs
                    tabBarStyle={styles.tabBar}
                >
                    <Scene 
                        key="home" 
                        title="HOME"
                    >
                        <Scene 
                            key="home"
                            component={Home}
                        />
                        <Scene 
                            key="audioPlayer"
                            component={AudioPlayer}
                            title="AUDIO PLAYER"
                        />
                        <Scene 
                            key="notification"
                            component={Notification}
                            title="NOTIFICATIONS"
                        />

                        <Scene 
                            key="search"
                            component={Search}
                            title="SEARCH"
                        />

                    </Scene>                

                    <Scene 
                            key="latest"
                            title="LATEST"
                            component={Latest}
                    />

                    <Scene 
                            key="offline"
                            component={Offline}
                            title="OFFLINE"
                    />

                    <Scene
                        key="more"
                        component={More}
                        title="MORE"
                    />

                </Scene> 
            </Stack>
        </Router>

CASE:

Я получил 4 вкладки с именами: Домашняя, Последняя, ​​Не в сети и более.

Я могу легко перейти к сцене audioPlayer со вкладки Home.

 Actions.audioPlayer();

Поскольку я добавил сцену audioPlayer внутри этой сцены вкладки Home.

ПРОБЛЕМА:

Как перейти к этой сцене audioPlayer внутри домашней сцены из последней сцены?

Любые предложения.Должен ли я добавить сцену audioPlayer внутри Последней сцены для навигации?

Спасибо.

PS: Я не хочу помещать эту сцену audioPlayer в мою последнюю вкладку.Я не знаю, единственное ли это решение.

ОБНОВЛЕНИЕ:

Если я это сделаю,

Actions.audioPlayer(); 

из последней вкладки, яперешел на домашнюю вкладку и оттуда на сцену audioPlayer.

Я хочу, чтобы эта навигация находилась внутри вкладки Последние.:)

ОБНОВЛЕНИЕ 2:

Если я помещаю сцену audioPlayer за пределы панели вкладок.Я могу перейти к сцене AudioPlayer, как я хочу.Но у меня есть одна проблема.Как я могу получить эту нижнюю панель вкладок в сцене audioPlayer?

1 Ответ

0 голосов
/ 26 февраля 2019

На основе вашего второго обновления (размещение сцены audioPlayer за пределами вкладок), попробуйте этот подход, добавив в сцену AudioPlayer реквизит clone.

<Scene 
  key="audioPlayer"
  component={AudioPlayer}
  title="AUDIO PLAYER"
  clone
 />

Редактировать: объяснить, что делает клон

Из документов

Сцены, отмеченные клоном, будут обрабатываться как шаблоны и клонироваться в родительский объект текущей сцены при нажатии.

Это означает, что нажатыесцена audioPlayer будет отображаться с использованием родительской сцены с вкладками в качестве шаблона, таким образом визуализируя кнопки вкладок.

...