Ada*_*rsh 1 javascript reactjs react-router-dom
应用程序.jsx
<Router history={history}>
<>
<Switch>
<Route path="/" exact component={HomePage} />
<Route path="/test/:id" exact component={TestPage} />
<Route component={NotFound} />
</Switch>
</>
</Router>
Run Code Online (Sandbox Code Playgroud)
render() 内的 HomePage.jsx
<Link to="/test/1" >Test link</Link>
Run Code Online (Sandbox Code Playgroud)
当我单击链接时,页面成功地将我重定向到http://localhost:8080/test/1,我可以看到该页面,但如果我单击刷新,页面就会消失,我只能看到空白屏幕,如果我想要从外部访问它,即如果我直接在浏览器上输入相同的网址,我看不到该页面,它是空白的。如何在刷新时管理它并从外部访问它?
我在刷新时收到控制台消息
问题是应用程序无法从第二个网址加载 main.js 脚本(它尝试从 /test/main.js 加载它)。您需要使用绝对路径来加载/而不是/test
将您的脚本标记替换为这个标记(从 /main.js 加载它):
<script type="text/javascript" src="/main.js">
您可以参考这个答案以获得更详细的解释:/sf/answers/1682016941/