reactjs - react build with gh-pages 生成错误的静态文件路径

标签 reactjs build github-pages

各位程序员 friend 们好!

我正在尝试在 npm 库 gh-pages 的帮助下部署应用程序。我遇到的问题是我的构建文件夹中的 index.html 错误地将我的存储库名称添加到静态文件路径。

根据文档,我的 package.json 中的主页字段应如下所示

"homepage": "https://username.github.io/repoName/",

但是,当我输入网站 url 时,我收到 404 错误代码,因为它正在寻找我的静态文件
"/repoName/static/js/main.34abd32a.chunk.js"

这让我感到困惑,因为我需要保持主页字段的原样,以便能够将其推送到 gh-pages 分支。

有任何想法吗?

最佳答案

我有同样的问题,静态文件用作 repo-name/static/..这是无效的。正确的是/static/..我使用 npx create-react-app 创建了应用程序并将 gh-pages (https) 与来自 google 域的自定义域一起使用
我用以下步骤解决了它

  • 在 package.json "homepage": "https:/username.github.io" (不要在这里使用 repo 名称)
  • 使用 BrowserRouterHashRouter索引.js。下面是我的代码片段

  • import { BrowserRouter as Router, Switch, Route } from 'react-router-dom'
    
    ReactDOM.render(
      <React.StrictMode>
        <Router>
          <Switch>
            <Route exact path="/">
              <App />
            </Route>
          </Switch>
        </Router>
      <React.StrictMode>,
      document.getElementById('root')
    );

    关于reactjs - react build with gh-pages 生成错误的静态文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59271816/

    相关文章:

    vue.js - 将 Vue 部署到 GitHub 页面。 vue-router 出错

    javascript - React Redux - 未捕获( promise )TypeError : Cannot read property 'props' of undefined

    javascript - 如何删除已使用的 JavaScript 建议数组值?

    git - Jenkins 多分支管道 - 在分支中配置属性?

    linux - 构建多架构 Debian 软件包的正确方法是什么?

    reactjs - 我该如何解决找不到模块: "sass" error?

    javascript - 组件 Prop 不会随着状态变化而更新

    reactjs - 必须在 React 函数组件或自定义 React Hook 函数中调用 React Hooks

    c# - 切换到任何 CPU 配置后,Win Service 项目不会构建

    github - Github Pages 上静态站点的 POSIX Spawn 超时错误