El user.uid que saqué de AuthContext y useContext da ese error. Básicamente, dejaré que se elimine la publicación compartida si el ID de usuario es igual al que inició sesión. Pero user.uid == post.userId esto no funciona y es un error: TypeError: null no es un objeto (evaluando 'user.uid') Como arreglarlo ?
import { AuthContext } from "../../Pages/AuthProvider/AuthProvider"; const PostCard = ({post}) => { const {user} = useContext(AuthContext); const userID=user.uid; return( <View style={styles.container}> <View style={styles.header}> <View style={styles.inner1_container}> <Image style={styles.profile_image} source={ProfileImg} /> <Text style={styles.username_text}>username</Text> </View> <View style={styles.inner2_container}> <Text style={styles.like_text}>Patileyenler: {post.likes}</Text> <View style={styles.like_button}> <TouchableWithoutFeedback onPress={liked} > <Image style={styles.like_button_image} source={isLiked ? likedPaw : unLikedPaw} /> </TouchableWithoutFeedback> </View> </View> </View> <View style={styles.describe_container}> <Text numberOfLines={8} style={styles.describe_text}>{post.descreption}</Text> { post.contact != "" && (<> <Text numberOfLines={2} style={styles.contact_text}>{iltetisimtext}{post.contact} </Text> </>) } <Text style={styles.time_text}>Paylaşma Zamanı</Text> { user.uid == post.userId && (<> <Text style={styles.time_text}>Delete</Text> </>) } </View> </View> ) }El motivo del error fue que el objeto de usuario era nulo cuando cerramos sesión. Verifiqué esto con if y resolví el error.
function deletePostText(){ if(user){ if(user.uid == post.userId){ return( <TouchableOpacity> <Text style={styles.time_text}>Delete</Text> </TouchableOpacity> ) } } else{ return; } }