Search code examples
node.jsreactjsmongodbmern

Uncaught TypeError: Cannot read properties of undefined (reading 'map') while using map function in useEffect


useEffect(() => {
        if(currentUser){
            currentUser?.friends.map(friends => {
                if(friends._id===currentProfile._id){
                    return setFriend(true)
                }
            })
        }else{
            return setFriend(false)
        }
    },[currentUser,currentProfile])

//currentUser is the user logged in
//currentProfile is user selected

i want to show button as Unfriend if the user selected is already a friend.Iam trying to use a map function to find if the user is already a friend.but the map function is shown as error


Solution

  • Looks to me like currentUser is defined but doesn't have a property currrentUser.friends. Try currentUser?.friends?.map(...)

    And change the else clause to always return instead. If return setFriend(true) was called, the return friend(false) won't be called, but in all other cases.