@react-navigation/native-stack
我有以下代码
useEffect(() => {
navigation.setOptions({
headerLeft: (props) => <HeaderBackButton {...props} tintColor={gold} onPress={() => navigation.navigate('back)} />
});
}, [navigation]);
但是单击“后退”按钮,我可以看到不透明度效果,但仅此而没有导航,
我更新了代码以进行更多调试
useEffect(() => {
console.log('loaded')
navigation.setOptions({
headerLeft: (props) => <TouchableOpacity onPress={() => console.log('test')} ><Text style={{fontSize: 40}} >{"< Back"}</Text></TouchableOpacity>
});
}, []);
我认为这个问题与HeaderBackButton
TouchableOpacity
已记录,但单击loaded
TouchableOpacity
我可以看到不透明度效果,但永远不会记录
test
如果您在屏幕组件中,则可以通过Props或Usenavigation Hook访问导航对象,然后调用GOBECK()返回上一个屏幕。
import React from 'react';
import { Button, View } from 'react-native';
import { useNavigation } from '@react-navigation/native';
const MyScreen = () => {
const navigation = useNavigation();
return (
<View>
<Button
title="Go Back"
onPress={() => navigation.goBack()} // Navigates back to the previous screen
/>
</View>
);
};
export default MyScreen;