【问题标题】:react router, curious as to how it does url navigation without hashes反应路由器,好奇它如何在没有哈希的情况下进行 url 导航
【发布时间】:2018-08-30 00:58:43
【问题描述】:

使用 create react app 你可以连接一个路由器,它可以在没有#的情况下导航,就像在 index/page1 中一样,我认为浏览器会自动将它发送到服务器,因为客户端只会捕获 #变化,这是一个纯粹出于好奇的问题,所以反应如何做正确的网址导航我正在使用用纱线创建反应应用程序我猜它使用某种类型的节点网络服务器。我们什么时候主持这个怎么样?

【问题讨论】:

    标签: javascript reactjs react-router create-react-app


    【解决方案1】:

    来自the History API article on Mozilla Developer Network

    假设http://mozilla.org/foo.html 执行以下JavaScript:

    var stateObj = { foo: "bar" };
    history.pushState(stateObj, "page 2", "bar.html");
    

    这将导致网址栏显示http://mozilla.org/bar.html, 但不会导致浏览器加载 bar.html 甚至检查 bar.html 存在。

    (由Mozilla Contributors 授权,在CC-BY-SA 2.5 下授权)

    因此,使用history.pushState 您可以更改 URL 栏中的位置,而无需实际执行导航。 (但是,我相信如果用户重新加载页面,浏览器会向服务器请求新的 URL,所以服务器应该仍然为新的 URL 返回一个合适的页面。)

    【讨论】:

      猜你喜欢
      • 2017-04-11
      • 2018-09-04
      • 1970-01-01
      • 2017-06-24
      • 2013-01-02
      • 2017-02-04
      • 1970-01-01
      • 1970-01-01
      • 2021-04-25
      相关资源
      最近更新 更多