我已经对React Router 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。然后,我进行了更多测试:
我还配置了一个404
页面,但是仅当路径为/{something that does't exist}
级别时才显示该页面。如果导航到/{something}/{something more}
,我将得到相同的ERR_ABORTED
。
由于某些我不知道的原因,浏览器尝试访问GET /test/index.js
,显然不存在。
我花了整整一天的时间浏览文章,教程和React Router文档,但是嵌套路由都可以正常工作。实际上,此错误绝对没有。
Edit1:经过更多测试之后,我已经可以将问题缩小为一个问题:如何配置react-router以始终在{domain,localhost:port} / index中查找捆绑包。 js?
Edit2:使用V6的Beta版进行了测试-结果相同。
答案 0 :(得分:1)
另一个是检查您在 Webpack 配置中是否有以下内容:
output: {publicPath: '/'},
花了我一些时间。
答案 1 :(得分:0)
几个小时后,我终于想通了!!错误真是愚蠢。在我的index.html
文件中,我需要与<script src="./index.js"></script>
捆绑在一起。只需删除点即可解决此问题。如果有人有相同的错误,请先检查您的index.html。