如何解决不处理React时不加斜杠
我遇到一个问题,其中URL / covid19 /有效,但/ covid19不起作用(末尾没有斜杠)。
当您检查网络请求时,似乎是向/而不是/ covid19 /
发出请求/ covid19(无斜杠)
/ covid19 /(带斜杠)
我不确定这是否与React的Router相关,这是我的配置:
ReactDOM.render(
<React.StrictMode>
<Router history={history}>
<Route path={"/covid19"} component={dashboard}/>
<Route path={"/"} component={dashboard}/>
</Router>
</React.StrictMode>,document.getElementById('root')
);
该网站是: https://datcom-website.uc.r.appspot.com/covid19/
我的服务器正在App Engine实例上运行。
解决方法
问题在于您如何在HTML中包含脚本,而不是与JS或React相关的任何内容。
您的脚本源是相对的-./path-to-script
;这使其依赖于URL。因此,从页面domain.com/exampleA
到脚本的路径为domain.com/path-to-script
,但是一旦在URL中添加另一个级别,甚至只是一个斜杠,相对路径就会改变。例如,domain.com/exampleA/
产生路径domain.com/exampleA/path-to-script
。
您应该改用绝对路径。在大多数情况下,只需在开始时删除.
就足够了。以/
开头的源路径表示该路径位于域的根级别。因此,无论URL是什么,/path-to-source
处的源始终将产生domain.com/path-to-script
。
因此,在您的用例中,您的脚本似乎需要更改为
<script src="/covid19/static/js/2.8cd0c9f0.chunk.js"></script>
<script src="/covid19/static/js/main.05f82414.chunk.js"></script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。