为什么我的 create-react-app 显示的是 README.md,而不是 index.html?

nik*_*nau 4 github-pages reactjs redux create-react-app

为什么我的 create-react-app 显示的是 README.md,而不是 index.html?

我已经运行 npm run build -> yarn run deploy,多次检查文件结构并阅读 gh-pages 文档。找不到任何其他具有相同问题的线程。

谢谢。

sud*_*ang 5

您可以检出文档从create-react-app关于这一点。

将主页添加到 package.json。

打开您的 package.json 并为您的项目添加主页字段:

"homepage": "https://myusername.github.io/my-app",
Run Code Online (Sandbox Code Playgroud)

或者对于 GitHub 用户页面:

"homepage": "https://myusername.github.io",
Run Code Online (Sandbox Code Playgroud)

Create React App 使用主页字段来确定构建的 HTML 文件中的根 URL。

安装 gh-pages 并将 deploy 添加到 package.json 中的脚本

现在,无论何时运行 npm run build,您都会看到一个备忘单,其中包含有关如何部署到 GitHub Pages 的说明。

要在https://myusername.github.io/my-app 上发布它,请运行:

npm install --save gh-pages
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用纱线:

yarn add gh-pages 在 package.json 中添加以下脚本:

  "scripts": {
+   "predeploy": "npm run build",
+   "deploy": "gh-pages -d build",
    "start": "react-scripts start",
    "build": "react-scripts build",
Run Code Online (Sandbox Code Playgroud)

预部署脚本将在运行部署之前自动运行。

如果您要部署到 GitHub 用户页面而不是项目页面,则需要进行两项额外修改:

首先,将存储库的源分支更改为 master 以外的任何分支。此外,调整您的 package.json 脚本以将部署推送到 master:

  "scripts": {
    "predeploy": "npm run build",
-   "deploy": "gh-pages -d build",
+   "deploy": "gh-pages -b master -d build",
Run Code Online (Sandbox Code Playgroud)

通过运行 npm run deploy 部署站点

然后运行:

npm run deploy
Run Code Online (Sandbox Code Playgroud)

第 4 步:确保您的项目设置使用 gh-pages 最后,确保您的 GitHub 项目设置中的 GitHub Pages 选项设置为使用 gh-pages 分支: