inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

React로 NodeBird SNS 만들기

좋아요 버튼 눌리는 문제... 상세페이지와 연동이 이상한 것 같습니다

298

jinne

작성한 질문수 17

0

깃허브 주소

https://github.com/jinne202/maplebird

질문이 조금 복잡할 수 있는데, 좋아요 버튼을 메인페이지에서 누르면 fail이 뜨면서 눌러지지 않는데, 좋아요 버튼을 상세페이지에서 누르면 (post/id) 눌러집니다. 또한 같은 상태에서 메인 페이지에 다시 돌아오면 다시 또 좋아요 버튼이 눌러집니다 ㅠㅠreducer에서 singlePost : {~~} 이 부분을 주석처리하면 메인페이지에서도 버튼이 잘 눌러지는데, 어떤 문제인지 짐작하기가 어렵습니다. consle.log로 눌릴 때 마다 post id를 찍어봤는데 메인 페이지에서도 post id를 잘 체크하고 있어서 어떤 부분에서 오류가 나는지 체크하기가 어렵습니다 ㅠㅠ 메인 페이지에서는 post.id랑 singlePost에서 id를 파악하는데 뭔가 문제가 있는건지 ㅠㅠ... 혹시 몰라서 깃 주소도 같이 올립니다...! 

코드 

<reducer>

<saga>

<back singlePost>

react javascript

답변 6

0

jinne

감사합니다! 

0

제로초(조현영)

네 가능합니다.

첫 줄 ...state.singlePost는 그냥 state.singlePost하셔도 됩니다.

0

jinne

...state.singlePost === null ? {
                    ...state,
                    mainPosts
                } : {
                    ...state.singlePost,
                    Likers : [{id : action.data.userId}, ...state.singlePost.Likers],
                }
이렇게 써서 해결했는데 괜찮은 코드일까 궁금합니다~~!

0

제로초(조현영)

두 가지 방법이 있는데요. singlePost에서 좋아요를 누르는 액션을 새로 만드는 것이 있을 수 있고요(LIKE_POST_SINGLE_POST_REQUEST처럼, 비추천).

아니면 singlePost인지 아닌지를 LIKE_POST_SUCCESS에서 파악해서 할 수 있습니다. singlePost가 reducer에 들어있는지 아닌지로 분기처리하시면 됩니다.

0

jinne

음... 제가 생각해봤을때 그러면 메인 화면에서 like를 눌렀을 때 singlepost가 null이 아닌 singlepost의 값을 받아올 수 있어야 하는거죠? 현재 싱글포스트에는 이런식으로 정보들이 있는데, 음... ㅠㅠ singlePost.Likers를 따로 가져와야 할 것 같은데, 지금 post/:id에서는 눌렀을때 모두 action.data로 받아오고 있는데 like에서는 action.data로는 postId만 받아올 수 있어서 이걸 어떻게 singlePost와 연결시킬 수 있을지 감이 잡히지 않습니다 ㅠㅠ 

0

제로초(조현영)

Like post success랑 unlike post success에서 singlePost부분 추가하신건가요? 메인화면에서 눌렀을 때는 singlePost가 null인데 null의 속성값을 조절하려니까 애러가 나는 것 같습니다.

next 10 이상에서는 redux dev tool 구동이 안되나요?

0

272

1

세션 갱신 문의 건

0

482

7

배포 진행 후 Highlight updates components render 표시

0

445

1

똑같은 기능을 하는 테이블

0

447

4

관계형

0

312

2

프론트 서버를 이용하지 않는경우

1

299

3

인피니트 스크롤링 사용시 오류

0

278

0

계속 이런에러가 떠서 해결하기는 했는데 어떤 의미인지 모르겠습니다.

0

433

2

req.user가 언제 생성되나요??

0

330

2

Cannot read property 'id' of null 에러

0

332

1

리트윗한 게시글 불러오는 sequelize

0

252

1

result.data에서 images인 이유

0

281

2

takeLatest에 대한 질문입니다.

1

342

2

프론트에서 express를 사용하지 않을때 동적라우팅

0

501

6

getInitialProps가 클라이언트에서 수행되는 이유?

0

258

1

리로드하면 팔로우 언팔로우 값이 초기화 되는 문제입니다.

0

445

2

스타일드 컴포넌트와 className을 통한 스타일 적용의 차이에 대해 궁금합니다

0

585

2

할인 쿠폰 사용이 안되는되요 (848-f9af83f183e3)

0

365

1

nodejs mvc 패턴

0

975

4

사용하고 보니, 람다 구성이 궁금합니다!

0

266

1

제로초님

0

445

1

새로고침 로그인 풀림 문제.

0

247

1

안녕하세요. 강의 너무 감사합니다

0

157

1

제로초님

0

170

1