反应本机导航 传回参数两个屏幕弹出



>我有一个用于主屏幕的屏幕,然后它被推送到下一个进行选择并将参数传递给下一个推送的屏幕,当您在该屏幕中选择某些内容时,我需要pop(2)并将所选详细信息发送到主屏幕。

但是pop不接受参数。如何实现这一点。

我不使用 Redux 或 MobX。

你需要这样做

屏幕 A:

this.props.navigation.navigate('ScreenB', {
onPressScreenAFun: (params) => {
this.screenAFun(params)
},
})
screenAFun = (params) => {
console.log(params)
}

屏幕 B:

this.props.navigation.navigate('ScreenC', {
onPressScreenBFun: (params) => {
this.screenBFun(params)
},
})
screenBFun = (params) => {
const { onPressScreenAFun } = this.props.navigation.navigate.state.params
onPressScreenAFun(params)
this.props.navigation.goBack()
}

屏幕 C:

moveBack = (params) => {
const { onPressScreenBFun } = this.props.navigation.navigate.state.params
onPressScreenBFun(params)
this.props.navigation.goBack()
}

这就是使用两个 pop(( 将参数从屏幕 C 传递到屏幕 A 的方法

最新更新