비동기 action 타입을 뭘로 지정해야 할까요?
//비동기
const logIn = (data: any): any => {
return (dispatch: Dispatch<AnyAction>, getState: any) => {
dispatch(logInRequest(data));
try {
return setTimeout(() => {
dispatch(logInSuccess({
id: 1,
name: "userName",
admin: true,
})
);
}, 2000);
} catch (error) {
return dispatch(logInFailure(error));
}
};
};
const logInRequest = (data: any): AnyAction => {
return {
type: "LOG_IN_REQUEST",
data,
};
};
const logInSuccess = (data: any): AnyAction => {
return {
type: "LOG_IN",
data,
};
};
const logInFailure = (error: unknown) => {
return {
type: "LOG_IN_FAILURE",
error,
};
};
//login을 dispatch
store.dispatch(logIn({ id: 1, name: "userName", admin: true }));
강좌코드를 타입스크립트로 변환해보고 있는중에 궁금한게 있어서 질문드립니다.
login 비동기 함수가 return 하는게 함수이고
setTimeOut함수 때문에 함수반환타입도 Action 타입이 아니라서
최종적으로 리턴타입이 () => NodeJS.Timeout | AnyAction이 되는것 같습니다
store.dispatch(login())을 하면 타입에러가 나오는데
login 리턴타입을 any로 바꿔주는거 말고 다른 방법으로 해결 할 수 있는 방법이 있을까요?
답변 1
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
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
718
1
mobx configure
0
208
1
리덕스 툴킷 과 saga질문
0
288
1
로깅 미들웨어 질문입니다
0
238
1
제너레이터 질문드립니다.
0
204
1





