【问题标题】:<Link> to same page including query Parameters<Link> 到同一页面,包括查询参数
【发布时间】:2022-01-09 18:33:27
【问题描述】:

我在 react 中有一个 Link 路由器,如下所示:

<Link to={window.location.href}>Name</Link>

但这只是重定向到:http://0.0.0.0:4321?name=applehttp://0.0.0.0:4321?name=apple

我只想重定向到包括查询参数在内的同一页面。 我尝试使用 # 但它忽略了查询参数。

最好是这样:http://0.0.0.0:4321?name=apple

【问题讨论】:

  • 不需要&lt;Link &gt;,你可以使用&lt;a href &gt;
  • &lt;Link&gt; 用于内部导航,即在应用程序内。我想导航到其他页面,你应该使用a
  • Link 组件用于内部链接,请勿使用原始锚点 &lt;a /&gt; 标记。请为您尝试做的事情分享一个更完整的代码示例。如果您要链接到您已经匹配和呈现的页面,那么您可能需要实现 componentDidUpdate 生命周期方法或使用 RRD 挂钩之一或侦听路由道具的更改并进行相应处理。但是,如果没有看到您的代码,我们无能为力。

标签: reactjs typescript react-router react-router-dom


【解决方案1】:

您可以从react-router-dom 使用useLocation() 访问页面的位置。

import { useLocation } from "react-router-dom";
.
.
.
    
let location = useLocation();

现在你可以使用

<Link to={location.pathname}>Name</Link>

【讨论】:

    猜你喜欢
    • 2016-06-28
    • 2014-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多