onPress={() => {
const resetAction = StackActions.reset({
index: 0,
key: "Tab1",
actions: [navigation.navigate({ routeName: "Tab1" })]
});
navigation.dispatch(resetAction);
}}
我想通过重置堆栈从堆栈导航器的第二个屏幕导航到Tab1。我没有为此使用Redux。以当前的方式,我可以重置堆栈或移动到Tab1页面(将其作为堆栈上的单独屏幕添加)。 我想先重置堆栈,然后再转到Tab1屏幕。有什么办法可以做到这一点?
答案 0 :(得分:0)
这是我成功的例子
该代码将打开两个屏幕,并根据index
,index
判断要显示在前面的屏幕0:显示第一个屏幕,index
1:显示第二个屏幕( tab1
屏幕将显示在这里)
希望它对您有所帮助
import { NavigationActions } from 'react-navigation';
const resetAction = NavigationActions.reset({
index: 1,
actions: [
NavigationActions.navigate({ routeName: 'home' }),
NavigationActions.navigate({ routeName: 'Tab1' })
]
})
this.props.navigation.dispatch(resetAction);