인프런 커뮤니티 질문&답변

조형진님의 프로필 이미지

작성한 질문수

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

구독 기능 (2)

구독기능 저장 질문입니다

작성

·

284

0

구독버튼을 누르면 subscribed 가 되고 카운트가 되는데, 새로고침을 하면 카운트가 된 상태에서 버튼이 subscribe로 돌아가서 다시 버튼을 누르면 카운트가 또 되네요... 이거때문에 구독동영상페이지에도 영상이 안올라오는거같은데 어떻게 해결해야할까요? 

깃허브 주소입니다 : https://github.com/ChoHJin/youtube-clone

답변 2

2

이런경우에는 클라이언트단과 서버단의 연쇄과정을 따라가며 콘솔을 찍어보는 디버깅을 통해 문제의 원인을 찾을 수 있습니다.

클릭을 통해 onSubscribe 를 눌렀을때 

Axios.post('/api/subscribe/subscribe', subscribedVariable)에서 subscribedVariable 이 제대로 담겼는지 콘솔을 통하여 확인을 할때는

클라이언트에서는 정상적으로 작동 하였겠지만

const subscribe = new Subscriber(req.body);

서버단에서 생성된 subscribe를 콘솔을 통하여 확인하면

노드에서 userFrom이라는 오타를 확인할 수 있습니다.

subscribe.save((err, doc) => {

혹은 (err, doc)을통해 console.log(doc) 으로 만들어진 doc이 이상함을 눈치채는 방법도 있구요.

핵심은 시작지점부터 그림을 그리거나 콘솔을 통하여 따라가며 찾다보면 오류를 다음엔 좀더 쉽게 해결할 수 있으실겁니다 !

0

server/models/Subscriber.js 파일을 확인하시면

모델의 필드가

userTo

userFrom (유저프롬)

으로 적어야하는데

userTo

userForm(유저폼)

으로 적어서 오류가 나는거라고 생각됩니다.