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

mkp0131님의 프로필 이미지
mkp0131

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

바뀐 상태 적용하고 eslint 점검하기

useSelector 두번(중복)실행해도 괜찮은가요?

작성

·

495

2

  const id = useSelector((state) => state.user.user?.id);
  const { addCommentDone } = useSelector(
    (state) => state.post
  );

위에 코드처럼 state 단계에서 갈리게되면 2번 실행하게되는데 성능엔 문제 없나요?

 

 

 

 

 

답변 2

2

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

네 아무 문제 없습니다. 다만 { addCommentDone } 이건 문제될 수 있습니다.

구조분해하지 말고 state.post.addCommentDone으로 하세요

mkp0131님의 프로필 이미지
mkp0131
질문자

구조분해가 state.post 에 있는 다른 key 의 값도 가져올수있어서 사용을 하고 있는데, 속도가 느려서 사용하지 말라고 하시는건가요?

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

구조분해할당을 사용할 시에는 addCommentDone이 아닌 다른 state.post 값 중 하나만 바뀌어도 컴포넌트가 리렌더링 될 수 있습니다.

mkp0131님의 프로필 이미지
mkp0131
질문자

구조분해 할당을 사용하면 안되겠네요. 감사합니다.

1

좋은 질문이네요. 덕분에 저도 배우고 갑니다.

https://velog.io/@arthur/useSelector%EC%9D%98-%EC%A0%81%EC%A0%88%ED%95%9C-%EC%82%AC%EC%9A%A9%EB%B2%95

관련한 글도 있어 공유해봐요.

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

심지어 저 글도 제가 답변했던 거네요 ㅋㅋㅋ

mkp0131님의 프로필 이미지
mkp0131

작성한 질문수

질문하기