강의

멘토링

커뮤니티

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

이현세님의 프로필 이미지
이현세

작성한 질문수

실전 리액트 프로그래밍

리덕스 소개

redux useSelector에 대해 질문있습니다.

해결된 질문

작성

·

216

1

강의 내용중 

const user = useSelector((state=> {
    console.log("User useSelector");
    return state.user;
 });
const product = useSelector((state=> {
    console.log("product useSelector");
    return state.product;
 });
useSelector 로그를 찍어 봤는데
User render
User useSelector
Product render
product useSelector
까지는 예상된 결과였는데
그 후
User useSelector
product useSelector는 왜 찍히는 건지 궁금합니다.

답변 1

1

이재승님의 프로필 이미지
이재승
지식공유자

안녕하세요
제가 봐도 이상하긴 하네요

궁금해서 코드를 훑어봤는데요
초기에는 아래 두 부분에서 각각 호출이 되겠네요

https://github.com/reduxjs/react-redux/blob/4a65734890eb221430aa0dbb1d94c9b47c372255/src/hooks/useSelector.js#L36

https://github.com/reduxjs/react-redux/blob/4a65734890eb221430aa0dbb1d94c9b47c372255/src/hooks/useSelector.js#L68

첫 번째 코드는 selector 함수가 변경 됐을 때 대응하기 위한 코드인데요
그 부분에서 (초기에) 비효율적인 호출이 발생하는 것으로 보입니다

이현세님의 프로필 이미지
이현세

작성한 질문수

질문하기