inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기

좋아요 싫어요 기능 (3) 클릭시 기능들

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

201

록벨

작성한 질문수 13

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();
    }
};
 
 
 
 

nodejs react redux mongodb

답변 1

0

John Ahn

안녕하세요 !!! 

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

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

npm i하면 바로, 라이브러리 오류없이 받아지고, 구동되는 소스는 없나요?

0

62

1

ERROR in ./node_modules/antd/es/version/index.js 2:15-22

0

228

1

자료 없음

0

336

1

이미지 깨짐

0

355

1

npm run dev 동작 에러

0

314

1

npm run dev 동작 에러

0

301

1

npm run dev 동작에러납니다...

0

667

1

npm run dev 실행 오류

0

663

1

비디오 업로드, 로그인, 회원가입 504 error

0

1062

1

시작부터 오류생기시는 분들 해결법입니다.

1

476

1

오류 해결 공유

0

473

1

npm install 에러 질문드립니다.

0

1136

2

아예 몽고DB에 연결한다고만 하고 연결이 안되고 있습니다.

0

556

1

해당 오류 해결 방법 좀 알려주세요 ㅠㅠ

0

534

1

로컬스토리지에 대한 질문입니다!!

0

517

0

video가 안 나타나는 문제

0

902

1

ffmpeg 설치 후 cannot read property 'format' of undefined 500 에러 해결

0

480

0

typeError or 콘솔 500 뜨는분..

0

341

0

npm run dev 관련 오류

0

582

1

답글이 달리지않고 디비에도 저장되지않으며 새로고침이 됩니다.

0

252

0

useState 자동 생성

0

349

1

TypeError: Cannot read properties of undefined (reading 'format')

0

1255

2

userData undefined / state에 user.userData가 없습니다.

0

252

0

antd Input background color 변경

0

246

0