TIL

[TIL] 24_0221 리덕스 thunk, tookit 에서의 오타, 리덕스와 vscord의 기능과 이름 충돌로 인한 오류

잇츄미 2024. 2. 21. 12:07

thunk에서 반환된 data가 fulfiled에 payload로 가지 않는 버그 해결 

추측

오타나 action이름이 잘못 됐을 것, return 하는 방법이 잘못된 것. ex) thunkAPI.rejectWithValue(), thunkAPI.fulfillWithValue활용 안 한 것

 

시도

1. thunk안에서 return을 thunkAPI.fulfiledWithValue(data) 이렇게도 써보고 마이그레이션된 방법인 그냥 return data도 해봄
2. __getletterCard의 thunk함수와 extraReducers를 처음부터 다시 써 봄.

 

원인 

1. extraReducers의 이름이 "s"가 빠져있는 extraReducer라고 되어있어서 extraReducers의 기능이
처음에 제대로 동작하지 않음

2. __getletterCards의 초기 이름인 __getletterCard라는 이름이 vscord 어딘가에서 충돌.
해당 충돌구간은 vscord에서도 감지가 안 됐음 

 

해결

thunk의 함수이름을 __getletterCards로 바꾸고 재구성 및 extraReducers도 재구성.

export const __getletterCards = createAsyncThunk(
  "letter/getLetters",
  async (_, thunkAPI) => {
   ~대충 내용~
  }
);