反应导航无限栈/动态栈

时间:2019-01-25 17:32:49

标签: react-native react-navigation react-navigation-stack

我想实现一个带有反应导航的无限堆栈,这意味着我需要一个动态的堆栈导航器,可以在其中推送无限数量的屏幕(最多20个屏幕就足够了)。您可以像在亚马逊应用程序中想象的那样,您可以在产品详细信息中单击相关产品,然后显示另一个产品详细信息屏幕,您可以在其中执行相同的操作。

你们中的任何人有一个想法怎么做吗?

1 个答案:

答案 0 :(得分:1)

这可以通过react-navigation

完成

您可以使用this.props.navigation.navigate('ScreenName')来代替this.props.navigation.push('ScreenName')

您可能想要在屏幕上传递某种描述,以便它知道要渲染什么,您可以通过传递参数来实现

this.props.navigation.push('ScreenName', { key: productId })

您只需要设置一些模板屏幕,然后可以通过传递给它们的参数来填充它们。

您可以在此处查看更多有关反应导航的不同功能的信息 https://reactnavigation.org/docs/en/navigation-prop.html#navigator-dependent-functions

以下是显示它可以正常工作的小吃https://snack.expo.io/@andypandy/infinite-navigation

在小吃中,我传递了位置和日期,您可以在将每个屏幕推到堆栈上时看到这些更新。按Go Back返回堆栈中的一位。