Есть много похожих вопросов, на которые даны ответы, но ни один из них не использует новейшую версию реакции-навигации. Я хочу go перейти на главный экран с экрана «Документ» при нажатии кнопки «Назад». Это то, что я пробовал, но это не сработало.
<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>
Отредактируйте для большей ясности: мое приложение начинается с «Домой», затем переходит в «Камера», а затем в «Документ». Теперь я не хочу go возвращаться в «Камера», когда нахожусь в «Документе», а прямо в «Домой», когда я нажимаю кнопку возврата телефона. Согласно документации, так можно переопределить кнопку «Назад».
<Screen
name="Home"
component={HomeScreen}
options={{
headerLeft: (props) => (
<HeaderBackButton
{...props}
onPress={() => {
// Do something
}}
/>
),
}} />; Но я не знаю, как go перейти в «Домой» с помощью приведенного выше кода. Поэтому я поискал похожие вопросы, и в большинстве из них было navigationOptions
и другие вещи. Я попытался ответить на вопрос, приведенный ниже.
import { HeaderBackButton } from 'react-navigation';
static navigationOptions = ({navigation}) => {
return{
headerLeft:(<HeaderBackButton onPress={()=>{navigation.navigate('A')}}/>)
}
} Так что да, кнопка «Назад» не отвечает, даже если я использую console.log