我有一个父导航器,其设置模态如下-:
function Launcher({navigation}){
return(
<Launch.Navigator
mode="modal"
>
<Launch.Screen
name='launchButton'
component={LaunchButton}
/>
<Launch.Screen
name='multiform'
component={MultiForm}
options={{
headerShown:false
}}
/>
</Launch.Navigator>
)
}
Multiform是第二个导航器,嵌套在第一个导航器中,如下所示:-
function MultiForm({navigation}) {
return(<FormNavigator.Navigator
initialRouteName='formOne'
>
<FormNavigator.Screen
name="formOne"
component={FormOne}
/>
<FormNavigator.Screen
name="formTwo"
component={FormTwo}
/>
</FormNavigator.Navigator>
)
}
我知道嵌套有效,因为LaunchButton内部的以下组件有效-:
<Button title="Go to form two" onPress={
()=>navigation.navigate('multiform', {
screen:'formTwo'
})}
/>
但是FormOne中的以下组件不起作用
<Button title="go to form two" onPress={()=>navigation.navigate('formTwo')}/>
<Button title="nested" onPress={()=>navigation.navigate('multiform', {
screen:'formTwo'
})}/>
但是第一个按钮应该起作用了,不是吗?
谢谢您的帮助!
修改
FormOne是模态的。我不认为这是问题所在,因为navigate.goBack
有效-这应该意味着该模式确实可以访问导航操作吗?