美文网首页
redux-thunk

redux-thunk

作者: gem_Y | 来源:发表于2020-09-19 19:38 被阅读0次

在Dispatch一个Action之后,到达reducer之前,进行一些额外的操作,就需要用到middleware(中间件)。在实际工作中你可以使用中间件来进行日志记录、创建崩溃报告,调用异步接口或者路由。 这个中间件可以使用是Redux-thunk来进行增强(当然你也可以使用其它的),它就是对Redux中dispatch的加强

store/index.js

import { createStore, applyMiddleware, compose } from 'redux';
import reducer from './reducer'
import thunk from 'redux-thunk'

const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? 
  window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({}) : compose

const enhancer = composeEnhancers(applyMiddleware(thunk))

const store = createStore(reducer, enhancer) // 创建数据存储仓库
export default store // 暴露出去

todoList.js

  componentDidMount() {
    const action = getTodoList()
    store.dispatch(action)
  }
export const getTodoList = () => {
  return (dispatch) => {
    axios.get('https://www.easy-mock.com/mock/5cfcce489dc7c36bd6da2c99/xiaojiejie/getList').then((res) => {
      const data = res.data.data.list
      const action = getListAction(data)
      dispatch(action)
    })
  }
}

相关文章

网友评论

      本文标题:redux-thunk

      本文链接:https://www.haomeiwen.com/subject/nnkyyktx.html