【发布时间】:2018-10-17 22:25:31
【问题描述】:
在 StackNavigator 已经用页面初始化后,我需要将页面添加到 StackNavigator。如何在任何给定时间添加页面/屏幕?我可以连接到一个州吗?
不太确定最好的方法是什么...
【问题讨论】:
标签: ios react-native navigation stack navigator
在 StackNavigator 已经用页面初始化后,我需要将页面添加到 StackNavigator。如何在任何给定时间添加页面/屏幕?我可以连接到一个州吗?
不太确定最好的方法是什么...
【问题讨论】:
标签: ios react-native navigation stack navigator
执行此操作的一种方法是导入页面/屏幕模板并准备就绪,然后在您的状态更改时使用以下内容动态填充它。
this.props.navigation.setParams({...yourDynamicProps})
如果您需要选择模板,您可以使用 Case/Switch 语句或 if/else 条件来动态更改模板名称。
this.props.navigation.navigate("DYNAMIC_STRING")
【讨论】:
this.props.navigation.setParams({}) 设置参数(数据),然后在模板中使用this.props.navigations.state.params 拉取这些道具。这样,您的模板可以是动态的,具体取决于您下载的内容。如果您需要制作多个页面,您可以在您的 render() 或 componentWillUpdate() 方法中创建一个新的 StackNavigator。它会起作用,但我不确定这是否是最佳做法。我会尝试制作一个模板并使其具有足够的动态性,以便在给定特定数据时呈现不同的组件。