首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用react-router和redux进行异步派单后,应在何处更新位置

在使用react-router和redux进行异步派单后,应在何处更新位置
EN

Stack Overflow用户
提问于 2016-08-17 19:50:10
回答 2查看 239关注 0票数 0

我现在遇到的问题是,我不知道如何在发送"FETCH_USER_FULFILLED“(参见https://github.com/DDecoene/React-flux-example/blob/4ab1503dc92d28108f50481a293104ba5d15a29e/app/actions/userActions.js#L17)后更新我的位置。

我正在尝试做的是,对API进行post,当它正常时,切换到索引“页面”

我也尝试过redux-router,但我根本没有让它工作。

EN

回答 2

Stack Overflow用户

发布于 2016-08-17 20:17:34

我建议使用react-router-redux。它附带了pushreplace操作,所以你可以在你的操作创建器中dispatch它们。这是一种处理路由更改的更干净的方法,您将在redux dev工具中看到正确的操作。假设您使用redux-thunk中间件:

代码语言:javascript
复制
export const fetchUser = (username, password) => {
  return dispatch => {
    axios.post(Endpoints.userLogin, {username, password}).then((response) => {
      dispatch({type: "FETCH_USER_FULFILLED", payload: response.data});
      dispatch(push('/new_location'));
    });
  };
};
票数 1
EN

Stack Overflow用户

发布于 2016-08-17 20:20:02

可能最简单的解决方案是在分派之后使用browserHistory.push():

代码语言:javascript
复制
import { browserHistory } from 'react-router';

...

axios.post(Endpoints.userLogin, {username, password})
  .then((response) => {
      dispatch({type: "FETCH_USER_FULFILLED", payload: response.data});
      browserHistory.push('your/index/route');

  })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38995841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档