Javascript 如何使用react navigation inside alert onpress?
我用的是react导航v5 当用户按Ok时,我试图从alert导航到登录屏幕, 但当前无法处理错误>> 找不到变量:导航 功能如下: 异步函数handleSubmit(导航){ 试一试{ const value=await AsyncStorage.getItem('storage_useremail'); 如果(值!==null){ 取('https://xxxxxx/logout', { 方法:“POST”, 标题:{ 接受:'application/json', “内容类型”:“应用程序/json”, }, 正文:JSON.stringify({ 电子邮件:value, }), }).then(res=>res.json()) 。然后(res=>{ //console.log(res.err_代码) 如果(res.err_code=='0000'){ Alert.Alert('Notice',res.message+”(“+res.err_code+”),[{text:'Yes',onPress:()=>navigation.navigate('Login')}]); }否则{ 警报。警报(“响应:+res.err_code+”-“+res.message”); } }) } }捕获(错误){ //检索数据时出错 } } 函数HomeNavigator(){ 返回( ({ 头型:{ 背景颜色:“#fb5b5a”, 边框底部宽度:0, }, 头灯:()=>( handleSubmit()} //onPress={()=>navigation.navigate('Login')} title=“注销” color=“#fff” /> ), })}> );Javascript 如何使用react navigation inside alert onpress?,javascript,react-native,expo,react-navigation,react-navigation-v5,Javascript,React Native,Expo,React Navigation,React Navigation V5,我用的是react导航v5 当用户按Ok时,我试图从alert导航到登录屏幕, 但当前无法处理错误>> 找不到变量:导航 功能如下: 异步函数handleSubmit(导航){ 试一试{ const value=await AsyncStorage.getItem('storage_useremail'); 如果(值!==null){ 取('https://xxxxxx/logout', { 方法:“POST”, 标题:{ 接受:'application/json', “内容类型”:“应用程序
}onPress应该是一个功能声明,按下时会触发该声明
onPress:()=>navigation.navigate('Login'))
因为您没有将导航传递给handleSubmit
function HomeNavigator() {
return (
<AppStack.Navigator mode="modal" initialRouteName="Login" screenOptions={({ route, navigation }) => ({
headerStyle: {
backgroundColor: '#fb5b5a',
borderBottomWidth: 0,
},
headerRight: () => (
<Button
onPress={() => handleSubmit(navigation)} // <<<<<<<<<<<< Here
// onPress={() => navigation.navigate('Login')}
title="Logout"
color="#fff"
/>
),
})}>
<AppStack.Screen
name="Home"
component={HomeScreen}
options={{
title: 'Home',
}}
/>
<AppStack.Screen
name="Memory"
component={MemoryScreen}
options={{
title: 'Memory',
}} />
</AppStack.Navigator>
);
}
函数HomeNavigator(){
返回(
({
头型:{
背景颜色:“#fb5b5a”,
边框底部宽度:0,
},
头灯:()=>(
handleSubmit(导航)}//您在哪里使用了handleSubmit
并将navigation
传递给了它?您好,我把头灯打开了。让我更新上面的代码。谢谢您没有将navigation
传递给handleSubmit
函数。您可以从``头灯:(导航)…`中获取它,然后将它传递给handleSubmit(导航)