我正在尝试整合thunk以获取redux,以允许axios对我拥有的后端API进行异步调用。
这是一个现有项目,正在移至添加redux和typescript中。
由于某些原因,使用推荐的重击动作创建器时,无法使端点受到攻击:
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)));
我感觉这变得更加困难,因为我试图同时转换为打字稿并同时添加redux。
任何帮助,将不胜感激,谢谢。
尝试包裹getAllCharacters
里面mapDispatchToProps
类似如下
mapDispatchToProps = (dispatch: Dispatch) => ({
getAllCharacters: (...) => dispatch(getAllCharacters(...))
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句