我正在寻找方法来重置或清除最新版本的本机导航5中TabBar中的嵌套堆栈。 谢谢。
答案 0 :(得分:2)
如果您只想重设到第一个屏幕,或者如果要在堆栈顶部设置其他路由,则可以使用COUNT(*) in the subquery, but it is not used in the outer query - I removed that column from the
,可以使用:
navigation.popToTop()
答案 1 :(得分:0)
在反应导航v5或更高版本中,我通过执行以下逻辑进行工作: 登录/注销后重置导航历史记录 这里的screenOrStack应该是堆栈中的屏幕名称,或者如果您要导航到其他堆栈,则应该是该堆栈名称。
例如:1)在进行身份验证检查后登录时,使用DashboardStack调用此函数
在注销操作中使用Loginstack调用此
this.props.navigation.dispatch(
CommonActions.reset({
index: 0,
routes: [{ name: screenOrStack_name }],
})
);
答案 2 :(得分:0)
navigation.reset({
routes: [{ name: 'Login' }]
});