React-native-navigation:goBack() 不起作用

IT技术 reactjs react-native react-redux react-navigation
2021-05-16 17:00:29

我在 React Native 中使用带有 Redux 的 React Navigation。导航工作正常,但在一个屏幕上 goBack() 函数不起作用。你能告诉我们为什么吗?

这是标题配置:

static navigationOptions = {
        header: ({ state, goBack }) => {
            return {
                title: state.params.name,
                right: (<Button
                    title={'Done'}
                    onPress={() => goBack()}
                />)

            }
        }
    }

这是调度的事件:

在此处输入图片说明

没有弹出屏幕。设备上的屏幕保持不变。

4个回答

尝试 <Button onPress={() => this.props.navigation.goBack(null)}>

null用作输入参数时,它会将您带到最后一页(即时历史记录),并且在嵌套的StackNavigator返回父导航器时,当子导航器在堆栈中只有一个项目时,它会有所帮助。

他们将来可能会更改,因为根据他们的文档,他们计划更改它。

欲了解更多信息,请点击此处

我认为,如果你想使用 goBack() 动作,你必须在你的视图中做这样的事情(不是标题)

<Button onPress={() => this.props.navigation.goBack()}>

GoBack 有点不稳定,它明确地调度了对我有用的动作。

import { NavigationActions } from 'react-navigation';

this.props.navigation.dispatch(NavigationActions.back())

我也有同样的问题。我不知道为什么但是写 goBack(null) 对我有用:|