我有两个屏幕:UserProfile
和EventEdit
。两者都在不同的stackNavigators中
const ProfileDrawer = createDrawerNavigator(
{
Profile: UserProfile,
ProfileEdit: UserProfileEdit,
ProfilePreferences: UserProfilePreferences,
ProfilePrivacy: UserProfilePrivacy,
ProfileSupport: UserProfileSupport
}
);
const EventStack = createStackNavigator(
{
Events: Events,
EventEdit: EventEdit,
NewEvent: NewEvent
},
{
initialRouteName: 'Events',
defaultNavigationOptions: {
headerShown: false
}
}
);
我想做的是从EventEdit
进入UserProfile
屏幕,然后回到UserProfile
。问题是我尝试使用navigation.goBack();
,但是将我发送到Events
屏幕,而不是UserProfile
。
另外,我尝试将EventEdit
放入ProfileDrawer
堆栈中,但是由于用户在执行此方法时可以有多个事件,因此它只会将我发送到我选择的第一个事件,但我不会我不会参加其他任何活动。
此外,我忘了提到用户可以从多个屏幕访问EventEdit
,有时这些屏幕在其他堆栈导航器中,例如此处的情况。
我的react-nativagion
版本是"^4.2.2"
我该如何实现?
答案 0 :(得分:0)
您可以制作一个TopLevelNavigator
并访问这些从任何堆栈到任何其他堆栈的路由。
https://reactnavigation.org/docs/4.x/navigating-without-navigation-prop