React native 在我的情况下,如何清除以前从子屏幕传递的路由参数
我正在开发一个本地项目。这是我的主屏幕,可以从子屏幕接收路由参数。 (用户可以从主屏幕导航到子屏幕,反之亦然。) 当从子屏幕导航回主屏幕时,在React native 在我的情况下,如何清除以前从子屏幕传递的路由参数,react-native,react-native-navigation,React Native,React Native Navigation,我正在开发一个本地项目。这是我的主屏幕,可以从子屏幕接收路由参数。 (用户可以从主屏幕导航到子屏幕,反之亦然。) 当从子屏幕导航回主屏幕时,在ChildScreen内部,我有: //this is inside Child screen onPress={() => navigation.navigate("MainScreen", {data: 'foo'}) } 上面的代码片段演示了如何将路由参数从子屏幕传递到主屏幕 总
ChildScreen
内部,我有:
//this is inside Child screen
onPress={() =>
navigation.navigate("MainScreen", {data: 'foo'})
}
上面的代码片段演示了如何将路由参数从子屏幕传递到主屏幕
总的来说,它工作得很好。然而,有一个问题。这在main屏幕
内,一旦从ChildScreen
导航回main屏幕
,route?内的参数值将被保留。我的意思是,如果我关闭应用程序的进程并再次启动该应用程序(再次显示main屏幕
),则
if (route?.params) {
//do something
}
执行,因为route?.params
包含以前从子屏幕传递的参数。这很糟糕,因为我希望我的主屏幕有一个干净的开始。如何解决此问题?尝试导航。按而不是导航。导航
if (route?.params) {
//do something
}