initialState가 제네릭 S인 이유가 잘 이해가 되지 않습니다.
308
작성한 질문수 3
안녕하세요, 항상 좋은 강의 감사드립니다.
기존에 리덕스를 사용한 경험이 있어서 작성하신 리덕스 사용법에 대해서는 의문이 없으나
ReducersMapObject의 제네릭 S가 initialState라고 말씀해주셨는데 해당 부분이 잘 이해가 되지 않습니다.
제가 현재 이해한 로직으로는
combineReducers자리에 ReducersMapObject<S, A>타입이 들어가고 ReducersMapObject<S, A>은 객체로서 해당 객체의 key값은
제네릭 S의 key값을 K로 받고 해당 value값(S[K])을 Reducer의 첫번째 제네릭으로 ( Reducer<S[K], A>) 들어가 initialState 타입을 리턴해주는 함수타입이 되고 ReducersMapObject 객체의 value값 타입으로 적용되고있습니다. 하지만 아무리 강의를 반복해서 봐도 S가 initialState가 되는 인과관계가 파악이 안되고 있습니다 위의 로직은 전부 S가 initialState라는 약속하에 이해되는 로직인데 해당 약속을 어디서 파악할 수 있는지 혹시 제가 놓친 부분이 있을까요?
어렴풋이 짐작해본 이유로는 createStore 함수를 실행할 때 두번째 인자로 initialState를 넣은 부분이 아닐까 싶은데
해당 이유를 설명해주시면 감사하겠습니다.
답변 1
0
combineReducers는 여기만 보시면 됩니다. 이것의 리턴이 Reducer이고 매개변수들은 개별 리듀서들의 합입니다.
https://github.com/reduxjs/redux/blob/80bda95d58f46fb5f6cbf6996ea87d1dcf58a602/src/combineReducers.ts#L114
타입 오버라이딩
0
77
2
React19에서 useRef 타입 정의의 변화
0
118
2
jQuery를 $로 한 번 더 감싼 형태
0
54
1
typescript interface를 jsdoc으로 주석달 때
0
229
2
declare module시 import 위치
0
195
2
declare global 로 선언된 타입을 확장하는게 아닌 좁히는것도 가능할가요?
0
145
2
typescript 강의를 보고 개발을 하다가 강의와 다른 내용인데 물어볼곳이 여기밖에 없어서 질문 드립니다.
0
234
1
강의에 필요한 사전준비와 예제 코드 첨부
1
308
1
local.ts 예제코드 첨부 합니다.
1
227
1
redux 예제코드 가져와서 강의 보면서 따라하는데
1
242
1
react 함수 컴포넌트 타이핑은 있는데 클래스 컴포넌트 타이핑 예제 코드가 없네요.
1
285
1
axios 1.6.0 버전으로 보고 있는데영
4
391
1
Module '"axios"' has no default export 에러 나시는분들
0
879
1
안녕하세요, 제로초님 타입스크립트 axios 분석 강의보고 궁금한점이 있어서 질문드립니다
1
386
1
안녕하세요. 제로초님 당신의 강의 매니아 입니다. typescript 모듈 관련 질문이 있어서요.
0
268
1
axios catch 에서 error 타입에 대해 as 없이 이렇게 사용하면 어떨까요?
0
405
1
global 선언 시 export {}
0
296
1
declare module vs declare namespace
0
473
1
declare namespace vs namespace
0
494
2
"axios": "1.4.0" 버전 axios type 코드가 강의와 다릅니다!
0
555
1
Redux type 설정 과정에서 발생한 오류 질문 (ts[2345])
1
376
2
index.d.ts 에서 global declare 선언을 했을 때와 하지 않았을 때의 차이
0
403
1
미들웨어가 커링패턴으로 이루어진 이유
0
435
1
axios 파트 첫번째 강의 질문입니다
0
531
1





