React-Native在登陆成功或注销后销毁路由,只保留当前栈
发布时间:2020-12-15 07:31:03 所属栏目:百科 来源:网络整理
导读:前言 在移动APP中,我们经常会遇到登陆成功,或者注销后,不允许返回上一页面,这就需要我们清楚栈中的其余view,RN中我们应该如何处理呢? 方法 主要原理是借助于onDidFocus和immediatelyResetRouteStack两个方法实现。 对此我们先看看Navigator提供给我们默
前言在移动APP中,我们经常会遇到登陆成功,或者注销后,不允许返回上一页面,这就需要我们清楚栈中的其余view,RN中我们应该如何处理呢? 方法主要原理是借助于onDidFocus和immediatelyResetRouteStack两个方法实现。 对此我们先看看Navigator提供给我们默认的方法有哪些?
在具体使用中,我们需要添加一个onDidFocus属相,然后判断当前路由是否要求重置整个线路。 <Navigator
ref="navigator"
initialRoute={{name: 'LaunchView'}}
renderScene={this.renderScene}
configureScene={this.configureScene}
onDidFocus={(route) => {
if (route.reset) { this.refs.navigator.immediatelyResetRouteStack([{ name: route.name }])
}
}}
/>
使用方法: this.props.navigator.push({name: 'yourview Name',reset:true});
ok,搞定了! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |