• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

좋아요 싫어요 숫자 표시 이벤트 코드 문의

21.12.06 17:24 작성 조회수 133

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
 
 
const onClickDisLike = () => {
    if (DisLikeAction === null) {
      Axios.post("/api/like/upDisLike", variable).then((res) => {
        console.log("onClickDisLike", variable);
        if (res.data.success) {
          setDisLikes(DisLikes + 1);
          setDisLikeAction("liked");
          if (LikeAction !== null) {
*********************************************
           setLikes(Likes - 1);
      setLikeAction(null);
****************************************
이부분 서버도 같이 실행되야 할거 같은데 맞을까요
?
 
          }
        } else {
          alert("싫어요 클릭이벤트 실패!");
        }
      });
    } else {
       Axios.post("/api/like/unDisLike", variable)
.
then((res) => {
      if (res.data.success) {
        setDisLikes(DisLikes - 1);
        setDisLikeAction(null);
      } else {
        alert("싫어요 클릭이벤트 실패!");
      }
  });
    }
};
 
 
 
 
아래 처럼 수정해주어야, 다시 로드했을때 숫자가
반영 되서 나오는 것 같아용
완성본 github 주소를 못찾아서ㅎㅎ
 
----------------------------------------------
 

  const unLike = () => {
    Axios.post("/api/like/unLike", variable).then((res) => {
      if (res.data.success) {
        setLikes(Likes - 1);
        setLikeAction(null);
      } else {
        alert("좋아요 클릭이벤트 실패!");
      }
    });
  };

  const unDisLike = () => {
    Axios.post("/api/like/unDisLike", variable).then((res) => {
      if (res.data.success) {
        setDisLikes(DisLikes - 1);
        setDisLikeAction(null);
      } else {
        alert("싫어요 클릭이벤트 실패!");
      }
    });
  };

  const onClickLike = () => {
    if (LikeAction === null) {
      Axios.post("/api/like/upLike", variable).then((res) => {
        console.log("onClickLike", variable);
        if (res.data.success) {
          setLikes(Likes + 1);
          setLikeAction("liked");
          if (DisLikeAction !== null) {
            unDisLike();
          }
        } else {
          alert("좋아요 클릭이벤트 실패!");
        }
      });
    } else {
      unLike();
    }
  };

  const onClickDisLike = () => {
    if (DisLikeAction === null) {
      Axios.post("/api/like/upDisLike", variable).then((res) => {
        console.log("onClickDisLike", variable);
        if (res.data.success) {
          setDisLikes(DisLikes + 1);
          setDisLikeAction("liked");
          if (LikeAction !== null) {
            unLike();
          }
        } else {
          alert("싫어요 클릭이벤트 실패!");
        }
      });
    } else {
      unDisLike();
    }
};
 
 
 
 

답변 1

답변을 작성해보세요.

0

안녕하세요 !!! 

네 넣어주시면 됩니다 !!! 

완성본 코드는 여기서 참조해주시면 됩니다 ! 
https://github.com/jaewonhimnae/react-youtube-clone
수고하세요 ~ !!!