编程语言
首页 > 编程语言> > javascript-如何在react-router v4中保留查询参数

javascript-如何在react-router v4中保留查询参数

作者:互联网

用户登录后重定向到我的应用程序(Java上的服务器),并且具有网址,如下所示
http://10.8.0.29:8083/html/?locale=RU&token=1c5c71f2-dcda-4a51-8cf6-f8f6ff1031d0&returnTo=http://10.8.0.23:8080/

(带有一些参数,html-是源所在的文件夹).在我的应用上导航时,我需要保留这些参数.到目前为止,除了这个How to redirect with react-router while preserving initial query parameters?旧问题之外,我没有找到任何简单的解决方案,所以我希望再次提出这个问题.提前致谢.

解决方法:

在React-Router 4.3(不确定早期版本)中,如果您有< Route>就在上面,这样的事情应该起作用:(这在Typescript中)

Route({ path: ..., render: (props) => function() {
  Redirect({ ...,
      to: { pathname: ... search: props.location.search, ... }})
});

说明:您使用渲染器:(props)=> ….< Route>的财产标签,而不是component:…,因为render为您提供了道具,因此请在< Redirect>内您可以使用props.location.search,以这种方式访问​​当前查询参数,并在重定向中重复使用.

如果没有< Route>以上,也许你做不到.我在这里问:How preserve query string and hash fragment, in React-Router 4 <Switch><Redirect>?

标签:react-router-v4,javascript,reactjs,react-router
来源: https://codeday.me/bug/20191011/1889811.html