这是我的注销功能,应在注销后将用户重定向到登录屏幕。但这不起作用,并且出现错误“此渲染未返回任何内容”。
const signout= async() => {
setShowLoading(true);
try {
const a= await auth().signOut().then(()=>{
console.log(a);
setUser(null)
setShowLoading(true)
if(!user)
{
return navigation.navigate('Login')
}
}
);
}
catch (e) {
setShowLoading(false);
Alert.alert(
e.message
);
}
};
这是我返回的函数
return (
<View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
<Text>Welcome {user.email}</Text>
<Button title="logout" onPress={()=>signout()}/>
{showLoading &&
<View style={styles.activity}>
<ActivityIndicator size="large" color="#0000ff" />
</View>
}
</View>
);
答案 0 :(得分:0)
渲染功能未返回任何内容,表示您其中一个组件未返回任何要渲染的内容。在您的代码块的情况下,在有用户的情况下,什么也不返回。您可以编辑renderMethod返回主屏幕,也可以根据需要将用户导航到其他页面,然后设置或取消设置用户。无论哪种方式,react必须在屏幕上呈现一些内容,否则它将引发类似这样的错误。