action 의 재활용
204
작성한 질문수 75
강사님 안녕하세요.
질문 하나 남기고 갑니다.
- A 목록조회
- B 목록조회
- C 목록조회
위 3개의 업무를 각각 수행하는 action 함수와 그에 맵핑된 saga 함수들이 이미 만들어져 있다고 가정하겠습니다.
만약 어떤 특이한 컴포넌트에서, 위 3개 정보들을 한번에 출력해야 하는 경우가 생겼을 시
이미 만들어져 있는 action 을 재사용하는 측면에서 아래와 같이 3개의 action 을 순차적으로 호출하는 식으로 개발해도 무방한지 궁금합니다.
const aList = useSelector(state => state.xxx.aList);
const bList = useSelector(state => state.xxx.bList);
const cList = useSelector(state => state.xxx.cList);
.....
onClick = () => {
dispatch(actions.getAList(...));
dispatch(actions.getBList(...));
dispatch(actions.getCList(...));
}
아니면 3개의 api 를 병렬로 호출하는 별도의 saga 함수를 만들고,
api 의 결과를 store 에 담는 하나의 reducer 를 만들어서 처리하는 게 나은 개발방식인지 알고 싶습니다.
dispatch를 연달아 3번 호출하면 기존 action 을 재사용 측면에서는 좋지만 렌더링이 여러번 발생할 듯 한데
렌더링이 여러번 발생하는 단점을 고려하여, 최적화된 별도의 action 과 saga 함수를 만들어 사용하는 것이 좋을 지 강사님 의견을 듣고 싶습니다.
답변 2
0
답변 감사드립니다.
jQuery 개발하던 때에는 로직 자체에만 집중을 했던 것 같은데
리액트 개발할 때는 상태가 바뀌면서 렌더가 자주 발생하면 문제가 되지 않을까 라는 생각을 항상 품고 개발을 하게 되는 거 같아요. 그러다보니 리액트가 어렵게 느껴지는 거 같고요..
익숙해질 때가 오겠죠 ㅎㅎ
0
안녕하세요
개인적으로는 성능 고민은 성능 이슈가 있을 때 하는 게 좋다고 생각합니다
(제가 강의에서 너무 성능 얘기를 많이 했나싶기도ㅎㅎ)
성능 이슈가 없다면 (위에 적어주신) dispatch 를 세 번 호출하는 방식이 좋은 것 같아요
만약 A, B, C 가 항상 같이 호출된다면 (당연한 얘기지만) 하나의 액션으로 처리하는 게 좋구요
자동완성기능이 안되네요 ..
0
502
3
화면에 에러가나네요 ...
0
517
2
setValue 함수 질문 있습니다.
0
842
1
찾아야한다 실습 문의
0
471
1
훅 기초 익히기 - 배치 처리와 순차적 처리의 차이
0
476
1
cra, next.js 관련 질문 드립니다!
0
606
1
useState 배열 비구조화 문법 질문!
0
254
1
Uncaught TypeError: Failed to execute 'removeChild' on 'Node': parameter 1 is not of type 'Node'
1
1087
2
Saga 오류 이거 혹시 왜이런지 알수 있을까요?
0
374
2
http://localhost:3001/user/search?keyword=u 이걸로 데이터를 보는데 저는 사이트에 연결할 수 없다고 나오네요
0
662
1
match
1
498
1
버튼이 생성되지 않습니다 .
0
288
1
혹시 import 옆에 파일 사이즈 표시 어떻게 하나요?
0
263
1
saga 문제
0
249
1
에러가 발생하는데 이유가뭘까요..?
0
391
2
선생님과 똑같이 했는데 다 rendering 됩니다.
0
205
1
컴포넌트와 컨테이너의 기준
0
316
1
커스텀훅의 개념과 함수차이
1
1199
1
useEffect 실전 활용법(1) 강의에서 질문있습니다.
0
339
1
리덕스, 사가파일들의 관리
0
208
1
useImperativeHandle 질문 입니다.
0
282
1
컴파일 문의드립니다.
0
206
1
React.memo 관련 질문이 있습니다.
0
377
1
Context API vs Redux 사용 빈도
0
214
1





