为了解决redux中要进行异步操作的问题,redux-thunk:Action 是由store.dispatch方法发送的。而store.dispatch方法正常情况下,参数只能是对象,不能是函数。
import { createStore, applyMiddleware } from 'redux';import thunk from 'redux-thunk';import reducer from './reducers';
// Note: this API requires redux@>=3.1.0const store = createStore( reducer, applyMiddleware(thunk));上面代码使用redux-thunk中间件,改造store.dispatch,使得后者可以接受函数作为参数。因此,异步操作的第一种解决方案就是,写出一个返回函数的 Action Creator,然后使用redux-thunk中间件改造store.dispatch。
Redux-promise既然 Action Creator 可以返回函数,当然也可以返回其他值。另一种异步操作的解决方案,就是让 Action Creator 返回一个 Promise 对象。import { createStore, applyMiddleware } from 'redux';import promiseMiddleware from 'redux-promise';import reducer from './reducers';
const store = createStore( reducer, applyMiddleware(promiseMiddleware));
转载于:https://www.cnblogs.com/zhouyu0001/p/11334708.html