我尝试使用 navigation.navigate() 从主屏幕导航到详细信息屏幕。当我第一次单击按钮进行导航时,它工作正常,但之后当我从详细信息返回主页并单击另一个项目以查看详细信息时,详细信息屏幕上的参数不会更改(它仍然是第一次单击的参数) )。这是我的代码:
<TouchableNativeFeedback
key={index}
onPress={() => {
navigation.navigate('PenghuniScreen', {
screen: 'DetailPenghuni',
params: {
penghuni: item,
},
});
}}></TouchableNativeFeedback>;
Run Code Online (Sandbox Code Playgroud)
item 是来自 Map Loop 的对象。我尝试使用 React navigation usefocuseffect 来控制台日志,并且参数在第一次单击后不会更改。
useFocusEffect(
React.useCallback(() => {
console.log('My params:', route.params.penghuni);
setPenghuni(route.params.penghuni);
return () => {
// source.cancel('Api Canceled');
console.log('tutup detail penghuni');
};
}, []),
);
Run Code Online (Sandbox Code Playgroud)
有人有解决方案吗?