Redux-Toolkit createAsyncThunk Dispatch显示为未定义

发布时间:2020-07-07 15:12

我使用Redux-Toolkit,试图在createAsyncThunk内使用ThunkAPI和分派,但是由于类型错误,我被拒绝了。不确定如何解决此问题。

我的商店:

export const store = configureStore({ 
    reducer: rootReducer, 
    middleware: [...getDefaultMiddleware()],
});

我的动作:

export const tester = createAsyncThunk(
    'tester',
    async (testData, {dispatch}) => { 
        await dispatch(load(true));
        const final = await someExternalFunc(testData)
        return final;
    }
);

但是,我得到的输出为 enter image description here

任何帮助将不胜感激。

回答1

根据您的评论,您并不是在称呼“ thunk right”。

调用test()会返回一个动作,然后您应该分派该动作:

const fetchTodo = createAsyncThunk("todo/fetchTodo", async (args, thunkAPI) => {
  console.log(thunkAPI, "thunkAPI");
  const response = await todoAPI();
  return JSON.stringify(response);
});

dispatch(test(testData));