【问题标题】:create-react-app is deployed on Heroku but page is blankcreate-react-app 部署在 Heroku 上,但页面为空白
【发布时间】:2020-11-26 19:23:37
【问题描述】:

我正在尝试在 heroku 上部署一个 react 应用程序,但在将其部署在 heroku 上显示空白页面后,我还使用 buildpack mars/create-react-app 创建了这个应用程序

这是我在部署项目中得到的:

这是我的package.json 文件:

    {
      "name": "covid-19",
      "version": "0.1.0",
      "private": true,
      "homepage": "covid-19-stats-by-anny-v3",
      "dependencies": {
        "@material-ui/core": "^4.11.0",
        "@material-ui/icons": "^4.9.1",
        "@testing-library/jest-dom": "^4.2.4",
        "@testing-library/react": "^9.5.0",
        "@testing-library/user-event": "^7.2.1",
        "axios": "^0.19.2",
        "express": "^4.17.1",
        "fetch": "^1.1.0",
        "gh-pages": "^3.1.0",
        "material-table": "^1.65.0",
        "mui-datatables": "^3.3.1",
        "react": "^16.13.1",
        "react-dom": "^16.13.1",
        "react-social-icons": "^4.1.0"
      },
      "scripts": {
        "start": "react-scripts start",
        "predeploy": "npm run build",
        "build": "react-scripts build",
        "test": "react-scripts test",
        "eject": "react-scripts eject"
      },
      "eslintConfig": {
        "extends": "react-app"
      },
      "browserslist": {
        "production": [
          ">0.2%",
          "not dead",
          "not op_mini all"
        ],
        "development": [
          "last 1 chrome version",
          "last 1 firefox version",
          "last 1 safari version"
        ]
      },
      "devDependencies": {
        "react-scripts": "^3.4.1"
      }
    }

【问题讨论】:

  • 你能添加你在服务器端(expressjs)配置的吗?
  • 我遇到了同样的问题。创建反应应用生产构建不加载块 .js 文件。我创建了快速服务器并将其作为静态文件提供服务。值得一试。
  • 我没有在其中包含 expressjs @MwamiTovi
  • @HarishMahamure 你是怎么做到的,你能给我发一些同样的教程吗?
  • 我做了上面提到的@HarishMahamure。 Heroku 考虑为 nodejs 设置配置 React 项目。我实际上看到你的package.json 中有expressjs...

标签: javascript reactjs heroku npm create-react-app


【解决方案1】:

这个白屏背后的原因是 JavaScript 文件被加载到浏览器中。

在你的 Webpack 配置中有 publicPath 设置告诉应用它的根路径是什么。在我们的示例中,这将是 https://www.yourwebsite.com/

如果设置正确,它将基于该 URL 的上述链接 - 并且您的应用程序将按预期加载。

把这个信息放在 package.json 文件中,在 package.json 的 version 后面加上这几行

"homepage":"your app link"

并再次构建应用程序,它将工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-02
    • 1970-01-01
    • 2017-09-21
    • 2017-06-06
    • 1970-01-01
    • 2019-08-29
    • 1970-01-01
    相关资源
    最近更新 更多