Javascript 为什么navbar back按钮在react native router flux中仍然显示为ActionConst.REPLACE?
我从登录场景开始,当我单击带有Javascript 为什么navbar back按钮在react native router flux中仍然显示为ActionConst.REPLACE?,javascript,reactjs,react-native,redux,react-native-router-flux,Javascript,Reactjs,React Native,Redux,React Native Router Flux,我从登录场景开始,当我单击带有Actions.home,type={ActionConst.REPLACE}的按钮时,它工作正常,并且在主场景中导航栏没有后退按钮。但是如果我从Login到Register再到registerwo再到Home,Home场景的导航栏会有一个back按钮 是什么导致了这个问题?我刚刚试过type='replace',但导航栏中仍然显示后退按钮 我的场景设置如下: const RouterWithRedux = connect()(Router) const store
Actions.home
,type={ActionConst.REPLACE}
的按钮时,它工作正常,并且在主场景中导航栏没有后退按钮。但是如果我从Login到Register再到registerwo再到Home,Home场景的导航栏会有一个back按钮
是什么导致了这个问题?我刚刚试过type='replace'
,但导航栏中仍然显示后退按钮
我的场景设置如下:
const RouterWithRedux = connect()(Router)
const store = configureStore()
export default class App extends Component {
render() {
return (
<Provider store={store}>
<RouterWithRedux>
<Scene key='root'>
<Scene component={Login} initial={true} key='login' title='Login'/>
<Scene component={Register} key='register' title='Register'/>
<Scene component={RegisterTwo} key='registerTwo' title='Register Two'/>
<Scene component={Home} key='home' title='Home' type={ActionConst.REPLACE}/>
</Scene>
</RouterWithRedux>
</Provider>
)
}
}
const RouterWithRedux=connect()(路由器)
const store=configureStore()
导出默认类应用程序扩展组件{
render(){
返回(
)
}
}
我只需使用'react native router flux'中的import{Actions}
和Action.key
来导航
提前谢谢你 您可以尝试:
<Scene component={Home} key='home' title='Home' type="reset"/>
工作完美!在我接受答案并投票之前,请回答几个简短的问题,重置和替换之间的主要区别是什么?您什么时候会选择其中一个呢?重置类似于替换,只是它会卸载导航器堆栈中的组件。重置类似于替换,只是它会卸载导航器堆栈中的组件。”如果要重置导航器堆栈,则必须使用“重置”。“替换”用于替换当前视图并在导航器堆栈中添加旧视图,类似于“Action.key”。您可以查看此页面以了解更多信息:明白了,请确认。登录后,重置堆栈通常是正确的做法,对吗?是的。检查用户是否已连接,如果用户已连接,则在主屏幕中重定向用户并重置堆栈。当用户注销时,在登录屏幕中重定向用户并重置堆栈。
Action.home({type:'reset'})