useSelector 사용시 문제점 문의
325
작성한 질문수 5
컴포넌트에서 user, posts 를 store 에서 꺼내올 때 매번 useSelector 를 사용하지 않고
const { user, posts } = useSelector(store => store)
위처럼 한번만 호출하여 사용하면 강의에서 class 기반에서 성능상의 이유로 reselect 사용해야 한다는 것고 동일한 이슈가 발생하는 건가요?
즉 user 만 업데이트 되어도 posts 까지 가져오는 연산을 수행하는지.. 한다면 저렇게 사용하면 안될 것 같은데 궁금하네요.
혹시 user 만 업데이트한 경우 posts 도 가져오기 위한 연산을 하는지 유무를 제가 직접 확인해볼 수 있는 방법이 있을까요?
답변 2
1
가져오기 위한 연산은 당연히 할수밖에 없는게 구조분해 문법이기 때문입니다. 함수 컴포넌트가 실행될 때 store객체에서 store.user와 store.post 를 꺼내올수밖에 없습니다.
0
디스트럭쳐링시 혹시 useSelector 내에서 최적화해서 꺼내주는 뭔가 있을까 싶어 문의드렸는데
확실하게 하려면 컴포넌트 내에서 store 참조시 아래 처럼 꺼내와야 불필요한 연산을 하지 않겠네요.
const user = useSelector(store => store.user);
const posts = useSelector(store => store.posts);
답변해 주신 내용 통해서 어떻게 쓰는게 더 성능상 좋게다는 판단은 드는데 혹시 직접 로그를 찍어본다던지 해서 확인할 수 있을까요?
요즘 디바이스, 브라우저 엔진들 다 성능이 좋아 코드 자체는 가독서 좋은 방식으로 짜는게 더 좋다고 생각은 하는데 디스트럭쳐링으로 store 참조시 실제로 어느정도 무리한 연산인지 직접 확인할 수 있으면 트레이드 오프를 좀 더 효율적으로 할 수 있을 것 같아 문의드립니다.
context api, redux를 혼용하는건 별로일까요?
0
368
1
섹션 3 mobx autorun 관련 질문입니다.
0
255
1
thunk 미들웨어 잡업 중 논리로직 단계? 질문이 있습니다.
0
285
1
rootSaga에서 call를 사용하는 이유가 궁금합니다.
0
358
1
observable의 함수를 익명함수로 바꿔봤습니다.
0
383
1
useSelector 리랜더링 질문있습니다.
0
382
1
비동기 action 타입을 뭘로 지정해야 할까요?
0
258
1
redux-thunk질문
0
432
1
state 변경 시 질문
0
346
1
state변경 시 질문
0
329
2
firstMiddleware와 thunkMiddleware 순서 질문
0
433
1
객체 동적 다이나믹 속성?? 질문
1
272
1
미들웨어 질문
0
247
1
리덕스 사가 실습 파일 확인 부탁드립니다!
1
581
2
1-6 강의에서 질문 있습니다!
1
359
1
redux-saga 깃헙 파일
0
369
1
createStore -> configureStore
0
300
1
전역 변수와 전역 상태 값
0
666
2
Redux toolkit 과 axios API 호출에 관한 질문입니다.
0
439
1
MobX Data
0
233
1
mobx state action 변화 감지 관련
0
717
1
mobx configure
0
208
1
리덕스 툴킷 과 saga질문
0
287
1
로깅 미들웨어 질문입니다
0
238
1





