如何让电极应用中的react-router推入动作文件

时间:2016-12-01 03:08:53

标签: react-router walmart-electrode

我有一个使用walmart电极框架的反应应用程序,使用反应路由器。我的问题是

a)如何在动作触发期间推送路线?我尝试从react-router导入push但是我找到了一个找不到错误的方法。我尝试使用browserHistory.push并设置网址,但出于某种原因登录只能在/#/ login?_k = jazzx而不是/ login登录。

b)我怎样才能让它来做/ resoure url而不是hash#/ resource urls。这是一个单页面应用程序。我意识到它正在这样做,因为它是一个单页应用程序,但有没有设置呢?什么是最佳做法?

c)电极附着在物体上的查询串是什么 - 仅适用于开发者?

export const tryLogin = (returnUrl = '/') => {
  return (dispatch) => {
    browserHistory.push('/login');  //this doesn't seem to render the route /#/login_k=somestring does work
    return dispatch(createLoginAction({ returnUrl }));
  };
}

1 个答案:

答案 0 :(得分:0)

网址/#/login?_k=jazzx表示您正在使用哈希历史记录,但您尝试使用browserHistory更改网址。如果您想使用浏览器历史记录API(也称为干净的网址),您应该将browserHistory传递给<Router>

如果您使用browserHistory,则需要在服务器上安装某种代码来处理路由设置。