gpt4 book ai didi

reactjs - React Router 与相对路径部署

转载 作者:行者123 更新时间:2023-12-03 14:24:36 27 4
gpt4 key购买 nike

我的问题是关于 react-router-dom与部署到相对路径结合使用(请参阅 https://create-react-app.dev/docs/deployment#building-for-relative-paths )。在我的开发环境中,路由器工作正常,但是一旦我使用 homepage 构建和部署我的应用程序,标签设置在 package.json路由器似乎不再工作了。

首先我假设它会起作用。毕竟,它是通过 React 为特定 url 进行构建的构建选项,我会假设该相对路径具有相同的功能。然而 <Link to=""> 都没有零件也不<Switch>请尊重我的 react 应用程序的相对路径。

其次,我还没有找到解决方案来规避这种行为。有什么想法吗?

处理 react 路由器和相对路径的其他问题集中在一个完全不同的主题。所以我还没有找到我的问题的答案。这个React-router app deployed on different locations (subdirectories)也许已经很接近了,并且可能是解决这个问题的一种方法。

信息:

"react-dom": "^16.8.6",
"react-router-dom": "^5.0.1",

编辑和附注:

我可能只需要设置一个基本名称。如果基本名称正在更改,我至少想从 package.json 中的设置推断它并且不根据某些 package.json 更改我的代码设置。

编辑2:

我可以使用basename={process.env.PUBLIC_URL}将基本名称设置为正确的 URL。但是路线仍然不匹配。然而,这些链接似乎很好,所以 <Link to="/xx">实际上会产生指向 {process.env.PUBLIC_URL}/xx 的链接这是期望的行为,但是路由器 <Switch>与它们不匹配。 实际上这就是答案,你可以刮掉它。

使用basename={process.env.PUBLIC_URL}确实解决了我的问题。

最佳答案

对于任何遇到同样问题的人:阅读我原来问题中的编辑。使用 basename={process.env.PUBLIC_URL} 确实解决了我的问题。

关于reactjs - React Router 与相对路径部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57572259/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com