无限的后台功能,如 Instagram

Infinite back functionality like Instagram

让我们假设,在一个应用程序中有 ViewProfile 组件,我们打开这个组件,我们看到喜欢这个打开的配置文件的用户列表。我们单击一个 AnotherUser34(具有相同的 ViewProfile 组件)并查看他的个人资料和喜欢他的用户,我们再次从那里 click/open 91AnotherUser,然后我们打开 10 个以上的个人资料,依此类推。如何为每个 this 实现返回功能?当我在 ViewProfile 组件上按回时,它会返回到 Tabbar 组件。我希望它以类似于打开组件的方式返回。

我想要像 Instagram 一样的后台功能。

请提出建议,一个小提示就可以完成工作,谢谢。

下面是我的场景结构(具体来说:https://github.com/bartonhammond/snowflake/blob/master/src/snowflake.js

<Router>
<Scene  key='root' hideNavBar>
<Scene key='login'/>
<Scene key='register'/>
<Scene key='Tabbar'>
    <Scene key='Main'>
        <Scene key='ViewProfile'/>
    </Scene>
    <Scene key='Nav2'/>
    <Scene key='NavMenu3'/>
    <Scene key='NavMenu4'/>
</Scene>
</Router>

我相信您可以使用 "push" 类型的功能来实现这一点。

它的作用是,当您调用 Actions.ViewProfile() 时,它会添加到导航堆栈中。

我不是 100% 确定,我现在无法测试。但我认为它会起作用。

您可以在此处查看 docs。 (转到文档中的场景。)

 <Router>
    <Scene  key='root' hideNavBar>
    <Scene key='login'/>
    <Scene key='register'/>
    <Scene key='Tabbar'>
        <Scene key='Main'>
            <Scene key='ViewProfile' type="push"/>
        </Scene>
        <Scene key='Nav2'/>
        <Scene key='NavMenu3'/>
        <Scene key='NavMenu4'/>
    </Scene>
    </Router>

如果你想以编程方式:

Actions.ViewProfile({type: 'push'});

这是 'clone' 场景的确切用例。

来自 https://github.com/aksonov/react-native-router-flux/blob/master/docs/API.md:

Scenes marked with clone will be treated as templates and cloned into the current scene's parent when pushed. See example.