【发布时间】:2020-11-02 15:15:16
【问题描述】:
已经回答了许多类似的问题,但没有一个使用最新的 react-navigation 版本。 我想在按下后退按钮时从“文档”屏幕转到“主”屏幕。这是我尝试过的,但它不起作用。
<NavigationContainer>
<Stack.Navigator initialRouteName="Home" screenOptions={{ headerShown : false }}>
<Stack.Screen name="Home" component={Home} />
<Stack.Screen name="Camera" component={CameraScreen} />
<Stack.Screen name="Document" component={Document} options={{
headerLeft: (props) => (<HeaderBackButton {...props} onPress={() => props.navigation.navigate("Home")}/>)
}} />
</Stack.Navigator>
</NavigationContainer>
编辑以获得更多说明:我的应用从“主页”开始,然后转到“相机”,然后转到“文档”。现在,当我按下手机的后退按钮时,我不想在“文档”处返回“相机”,而是直接返回“主页”。 根据文档,这是覆盖后退按钮的方法。
<Screen
name="Home"
component={HomeScreen}
options={{
headerLeft: (props) => (
<HeaderBackButton
{...props}
onPress={() => {
// Do something
}}
/>
),
}}/>;
但我不知道如何使用上面的代码去“家”。所以我搜索了类似的问题,其中大多数都有navigationOptions 和其他东西。我尝试按照以下问题的答案进行操作。
import { HeaderBackButton } from 'react-navigation';
static navigationOptions = ({navigation}) => {
return{
headerLeft:(<HeaderBackButton onPress={()=>{navigation.navigate('A')}}/>)
}
} 所以是的,即使我使用 console.log,后退按钮也没有响应
【问题讨论】:
标签: react-native react-navigation react-navigation-stack