首页 > 解决方案 > 我的应用程序在本地运行,但在 Heroku 上我只是获得了 React 徽标

问题描述

当我在本地运行我的应用程序时,它工作得很好。我在 Heroku 上部署了我的应用程序,构建成功,没有任何错误。但是,每当我打开应用程序时,我只会看到你第一次创建 React 应用程序时得到的 React 旋转图标页面。我在控制台中什么也没有得到,Heroku 日志给了我状态 200,所以我不确定发生了什么。

我注意到它与我的构建文件夹有关,因为当我删除应用程序时返回“未找到”。

我相信它在我的 server.js 文件中。

require("dotenv").config();
const express = require('express');
const port = process.env.PORT || 8080;
const path = require("path");

var app = express();

app.use(express.urlencoded({ extended: true }));
app.use(express.json());
if (process.env.NODE_ENV === "production") {
    app.use(express.static("client/build"));
}





if(process.env.NODE_ENV === "production"){  
    app.use("*", function(req, res){
        res.sendFile(path.join(__dirname, "/client/build/index.html"));
    })
}

app.listen(port, (req, res) => {
    console.log(`server listening on localhost:${port}`);
});

我刚刚尝试从我在 heroku 上成功启动的应用程序复制过来。我对编码还很陌生,所以我什至不知道其中一半是什么意思。如果有人可以帮助我,那将不胜感激。

标签: node.jsreactjsheroku

解决方案


我想到了。我的 package.json 中没有构建脚本


推荐阅读