Axios React/Redux - 使用 thunk 动作创建器时不触发?
Axios React/Redux - not firing when using thunk action creator?
我正在尝试集成 thunk 以获取 redux 以允许 axios 对后端进行异步调用 API 我有。
这是一个现有项目,正在移至添加 redux 和 typescript。
出于某种原因,在使用像这样的推荐 thunk 动作创建器时,我无法让端点被命中:
export const getAllCharacters = () => {
return (dispatch: Dispatch) => {
axios.get(charactersAPI())
.then(response => {
dispatch(loadCharacters(response.data));
})
}
}
如果我删除 return (dispatch) = () => {} 部分并且只让 axios 请求它工作并到达端点,但是我无法更新任何内容。
我已经安装了 thunk 并且似乎可以访问状态的其他部分没有问题,我只是无法触发这个异步部分。
商店:
const store = createStore(
appReducers,
compose((window as any).__REDUX_DEVTOOLS_EXTENSION__ && (window as any).__REDUX_DEVTOOLS_EXTENSION__(),
applyMiddleware(thunk)));
我感觉这更难了,因为我正在尝试同时转换为 typescript 和添加 redux。
如有任何帮助,我们将不胜感激。
尝试将 getAllCharacters
包裹在 mapDispatchToProps
内,类似于以下
mapDispatchToProps = (dispatch: Dispatch) => ({
getAllCharacters: (...) => dispatch(getAllCharacters(...))
})
我正在尝试集成 thunk 以获取 redux 以允许 axios 对后端进行异步调用 API 我有。
这是一个现有项目,正在移至添加 redux 和 typescript。
出于某种原因,在使用像这样的推荐 thunk 动作创建器时,我无法让端点被命中:
export const getAllCharacters = () => {
return (dispatch: Dispatch) => {
axios.get(charactersAPI())
.then(response => {
dispatch(loadCharacters(response.data));
})
}
}
如果我删除 return (dispatch) = () => {} 部分并且只让 axios 请求它工作并到达端点,但是我无法更新任何内容。
我已经安装了 thunk 并且似乎可以访问状态的其他部分没有问题,我只是无法触发这个异步部分。
商店:
const store = createStore(
appReducers,
compose((window as any).__REDUX_DEVTOOLS_EXTENSION__ && (window as any).__REDUX_DEVTOOLS_EXTENSION__(),
applyMiddleware(thunk)));
我感觉这更难了,因为我正在尝试同时转换为 typescript 和添加 redux。
如有任何帮助,我们将不胜感激。
尝试将 getAllCharacters
包裹在 mapDispatchToProps
内,类似于以下
mapDispatchToProps = (dispatch: Dispatch) => ({
getAllCharacters: (...) => dispatch(getAllCharacters(...))
})