Reactjs 行动不';t到达减速器,反应重做此。道具调度
我是react redux的新手,我正在尝试组装一个小web应用程序,同时我会学习最佳实践并理解框架。我的问题是,生态系统是如此的多样化,以至于我不知道为什么事情看起来会不同 我在看样板的吼声, 我的代码在大多数情况下都是相同的,但是虽然看起来动作被调用了,但它没有到达reducer,或者动作被调用了,但实际上没有被调度 我不能让它工作,我只是不知道我错过了什么,这让我觉得自己很愚蠢 我的配置商店看起来像贝娄,我看不出我应该做什么不同Reactjs 行动不';t到达减速器,反应重做此。道具调度,reactjs,redux,react-redux,Reactjs,Redux,React Redux,我是react redux的新手,我正在尝试组装一个小web应用程序,同时我会学习最佳实践并理解框架。我的问题是,生态系统是如此的多样化,以至于我不知道为什么事情看起来会不同 我在看样板的吼声, 我的代码在大多数情况下都是相同的,但是虽然看起来动作被调用了,但它没有到达reducer,或者动作被调用了,但实际上没有被调度 我不能让它工作,我只是不知道我错过了什么,这让我觉得自己很愚蠢 我的配置商店看起来像贝娄,我看不出我应该做什么不同 export default function confi
export default function configureStore(initialState, history) {
const reactRouterReduxMiddleware = routerMiddleware(history);
let middleware = [
thunk,
promiseMiddleware,
reactRouterReduxMiddleware
];
const store = applyMiddleware(...middleware)(createStore)(rootReducer, initialState);
return store;
}
半信半疑 这个问题最终证明是一个承诺 我以前使用的样板文件使用定制中间件,如下面的一个
/*
* Redux middleware to handle promises
* As seen in: https://github.com/caljrimmer/isomorphic-redux-app
* https://github.com/choonkending/react-webpack-node/blob/master/app/api/promiseMiddleware.js
*/
export default function promiseMiddleware() {
return next => action => {
const { promise, type, ...rest } = action;
if (!promise) return next(action);
const SUCCESS = type + '_SUCCESS';
const REQUEST = type + '_REQUEST';
const FAILURE = type + '_FAILURE';
next({ ...rest, type: REQUEST });
return promise
.then(req => {
next({ ...rest, req, type: SUCCESS });
return true;
})
.catch(error => {
next({ ...rest, error, type: FAILURE });
return false;
});
};
}
在我的代码中,我选择导入一个npm包,没有什么特别的原因,我只是想使用一个主动维护的存储库。
一旦我解决了这个问题,我就转到了这个问题,一切都很顺利
@dannyjoile说得对,configureStore出了点问题。当我导入redux promise中间件时,操作不会到达reduces。我不知道为什么,老实说,我还不太了解redux中间件
如果有人想看的话,我在github上找到了所有东西。
您是否按照
app/store/configureStore.js
正确配置了商店?无论如何,如果您正在学习React with Redux,那么Redux文档中的教程是一个比样板文件更好的起点,可以更好地掌握基础知识。您可以添加用于连接和分派操作的组件吗?我设法隔离了问题,与分派无关,结果是promise中间件,不确定原因。您是否按照app/store/configureStore.js
正确配置了存储?无论如何,如果您正在学习React with Redux,那么Redux文档中的教程是一个比样板文件更好的起点,可以更好地掌握基础知识。您可以添加使用连接和分派操作的组件吗?我设法隔离了问题,与分派无关,结果是promise中间件,不确定原因。