【问题标题】:React router V4 / V5 / V6 nested routing 404 net::ERR_ABORTED 404,React 路由器 V4 / V5 / V6 嵌套路由 404 net::ERR_ABORTED 404,
【发布时间】:2020-08-26 07:22:36
【问题描述】:

我已经使用 react 路由器 V4 和 V5 测试了下面描述的所有内容。在 V4 中错误只是 404,但在 V5 中它还包括 net::ERR_ABORTED。

我正在使用 React 路由器创建一个 React 应用程序。我需要有一个/test 路由和/test/:param1/:param2 路由。

第一条路线还可以,但是当我创建第二条路线并将浏览器导航到 localhost:8080/test/something/something2 时,我在控制台中收到了一个空白页面,提示它无法到达 GET localhost:8080/test/something/index.js

我正在使用 webpack 和 webpack-dev-server。然后我测试了更多:

  1. 试图将第二条路线放在第一条路线的组件内。
  2. 尝试简化到 /test/:param1 的路径,但这也不起作用。
  3. 然后我只尝试了一个普通的 1 级嵌套路由 /test/test2(无参数),但仍然得到标题中的错误。

我还配置了一个404 页面,但是它仅在路径为1 级时显示:/{something that does't exist}。如果我导航到/{something}/{something more},我会得到相同的ERR_ABORTED

由于某些我不知道的原因,浏览器尝试GET /test/index.js,这显然不存在。

我花了一天时间浏览文章、教程和 react 路由器文档,但嵌套路由在任何地方都可以正常工作。事实上,这个错误完全没有。

Edit1:经过更多测试,我已经能够将问题缩小到一个问题:如何配置 react-router 以始终在 {domain, localhost:port}/index. js?

Edit2:用 V6 的 beta 测试它 - 结果相同。

【问题讨论】:

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


    【解决方案1】:

    另一个是检查你是否在 Webpack 配置中有以下内容:

    output: {publicPath: '/'},
    

    花了我一些时间。

    【讨论】:

      【解决方案2】:

      几个小时后,我终于弄明白了!!这个错误太愚蠢了。在我的index.html 文件中,我需要<script src="./index.js"></script> 的捆绑包。只需删除点即可解决问题。如果有人有同样的错误,首先检查你的 index.html。

      【讨论】:

      • 天啊!!我完全有同样的错误!保存天数:D
      猜你喜欢
      • 2017-05-19
      • 1970-01-01
      • 2021-12-28
      • 1970-01-01
      • 2022-08-14
      • 2017-08-28
      • 2021-02-13
      • 1970-01-01
      • 2019-01-07
      相关资源
      最近更新 更多