【问题标题】:how to do server side routing programmatically in react-router?如何在 react-router 中以编程方式进行服务器端路由?
【发布时间】:2020-05-19 11:42:23
【问题描述】:

我在我的 react 项目中使用 react-router-dom

我正在尝试以编程方式使用:history.push("/newparam")

导航到新参数

但问题是像这样导航,没有刷新我的页面。看起来它在做假客户
侧路由。但是当我以编程方式导航时,我想刷新我的浏览器。

那么我怎样才能使用 react-router-dom 做类似 server-side 路由,当网站更改 url 时页面会刷新? p>

【问题讨论】:

  • React 用于单页应用程序。我想知道如果您可以在不刷新页面的情况下刷新页面,为什么还要刷新页面。

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


【解决方案1】:

当你使用 react-router 时,完整的路由由客户端的 react 处理,所以服务器只负责加载前端应用程序的索引,这是单页应用程序的正常行为。我们使用 XHR 调用与服务器进行所有通信。使用history.push("/newparam")<Link route='/newparam' /> 总是会从客户端加载页面。

我不完全知道您的用例,但是如果您希望每次导航到新页面时都重新加载页面,请使用 html <a> 标签,这将启动服务器端渲染。 JS 等价于 window.location.href = '/your-redirect-url';

让我知道你的用例到底是什么,以便我可以进一步帮助你

【讨论】:

    猜你喜欢
    • 2015-04-17
    • 2016-05-23
    • 1970-01-01
    • 2017-07-30
    • 2018-02-26
    • 2016-06-28
    • 2015-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多