74일차 TIL : 리액트 네이티브 프로젝트 - 좋아요 트러블슈팅

변시윤·2023년 1월 12일
0

내일배움캠프 4기

목록 보기
79/131

에러

다른 유저가 좋아요 한 상태에서 현재 로그인한 유저가 해당 좋아요를 클릭시 다른 유저의 좋아요가 취소되는 버그 발생

원인

  const countLikes = () => {
    if (!likesArray.includes(item.userId)) {
      likesArray.push(item.userId);
    } else {
      const idx = likesArray.indexOf(item.userId);
      likesArray.splice(idx, 1);
    }
  };

else문의 조건 = likesArray.includes(item.userId)
item.UserId가 현재 유저의 id가 아니라 LikesArray 안에 들어있는 모든 id를 포함하기 때문

해결

  const currentId = auth.currentUser.uid;

  const countLikes = () => {
    if (!likesArray.includes(currentId)) {
      likesArray.push(currentId);
    } else {
      const idx = likesArray.indexOf(currentId);
      likesArray.splice(idx, 1);
    }
  };

현재 로그인한 유저의 정보를 기반으로 판별

profile
개그우먼(개발을 그은성으로 하는 우먼)

0개의 댓글