如果将带有参数的react-router的直接URL传递给浏览器

时间:2017-12-19 19:58:48

标签: javascript reactjs react-router

文件 https://github.com/microcyberz/expensify

当我使用react-router的内置导航访问此URL http://localhost:8081/edit/01时,它可以正常工作。路线为<Route path="/edit/:id/" component={EditExpensePage} />

但是当我直接在浏览器中输入相同的URL时,我在控制台中出现以下两行错误,并且页面无法呈现任何内容。

错误

GET http://localhost:8081/edit/bundle.js net::ERR_ABORTED
GET http://localhost:8081/edit/bundle.js 404 (Not Found)

我将感谢你的帮助。

2 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为您的服务器未重定向到索引文件。我的意思是http://localhost:8081背后的是什么?是节点吗?您确定每个请求都以相同的方式处理吗?

您也可以查看如何加入Cursor.Current = Cursors.Default。路径是相对像bundle.js还是绝对像./assets/js/bundle.js?应该是绝对的。

答案 1 :(得分:0)

这是你的问题:

https://github.com/microcyberz/expensify/blob/master/public/index.html#L13

您正在相对于当前路径加载bundle.js,而不是从根目录开始。将其更改为/bundle.js,您就可以了。

在您的示例中,js相对于当前网址加载,从/edit/123解析为/edit/bundle.js