在ReactJS中单击其他URL时,立即重定向到另一个URL

时间:2019-10-27 20:23:07

标签: reactjs react-router

使用reactjs和react-router,在将http://localhost:3000/data/abc123加载到我的浏览器中后(通过单击发送给我的URL),如何将abc123发送到服务器,然后立即重定向到{ {1}}?我不确定如何使用http://localhost:3000/game/或从哪里开始。

这种情况的用例是通过电子邮件向用户发送一个特定于他们的URL(react-router,其中http://localhost:3000/data/abc123是他们的唯一ID)。单击此URL时,abc123被发送到服务器,并且根据服务器abc123的响应,使用他们自己的个人数据将用户重定向到http://localhost:3000/game/

1 个答案:

答案 0 :(得分:1)

为此,您可以渲染<Redirect to={"http://localhost:3000/data?" + yourData } />(您可以通过react路由器提供的location对象访问值,请确保使用connect获取这些数据),然后在将处理数据,您需要处理数据,然后使用相同的Redirect组件进行重定向(请确保渲染以重定向用户)

您还可以使用对象而不是仅提供路径

<Redirect
  to={{
    pathname: "/login",
    search: "?utm=your+face",
    state: { referrer: currentLocation }
  }}
/>

这里有一些参考,祝您编程愉快! https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/Redirect.md