GitHub gh-pages 可以与应用程序域名一起使用吗?

问题描述 投票:0回答:2

我在 gh-pages 上部署了一个 React 应用程序。问题是像 https://username.io/react-app-name 这样的 URL 不起作用。我遇到了一个问题,因为该应用程序没有通往“react-app-name”的路径...它必须只是“/”或“/users”等。因此,通过这种错误加载“未找到”页面。未找到的有一个返回主页按钮,它会将我带到主页“/”,然后应用程序可以从那里开始工作。我该如何解决这个问题? 抱歉我的英语不好,希望你能明白我想问的问题。

reactjs github deployment github-pages
2个回答
0
投票

你在使用 React Router 吗? 获得有关路由代码和库的更多信息,或者代码的链接将会非常有帮助。

如果你确实使用 React Router,我相信

basename
属性 会有所帮助。

  <BrowserRouter basename="react-app-name">
    <Routes>
      <Route path="/" element={<App />}>
        <Route path="users" element={<Users />} />
      </Route>
    </Routes>
  </BrowserRouter>

0
投票

如果我正确理解您的问题,您可能错过了在

homepage
文件中正确设置
package.json
属性。

具体操作方法如下:

  1. 打开您的
    package.json
    文件。
  2. 在顶层,以以下格式提供应用程序的主页:
    https://<gitname>.github.io/<repo-name>

这是一个例子:

{
  "name": "react-app",
  "version": "0.1.0",
  "homepage": "https://gitname.github.io/react-app-name",
  ....
}

您的 React 应用程序将部署在

/react-app-name

要了解有关如何将 React 应用程序部署到 GitHub Pages 的更多信息,请阅读 this

如果确实正确完成,您可能需要考虑在 basename

 中指定 
BrowserRouter
 属性,为应用程序中的所有位置提供基本 URL 路径(如 @ivanosevitch 的回答中所建议)。 


如果以上方法都不能解决问题,请详细说明您的问题,以便更容易理解问题的根源。

© www.soinside.com 2019 - 2024. All rights reserved.