之前,由于suggestion,我能够解决我的webpack问题。但是,当我尝试部署我的反应应用程序时,我没有收到任何错误,但是当我浏览到已部署的链接时得到了“无法获取/”。我尝试更改script
,甚至将整个项目移动到public
文件夹。似乎没有什么对我有用。我在这个过程中缺少了什么步骤?
以下是我的项目目录:
|-node_modules
|-public
|-app
|-src
|-webpack.config.js
|-package.json
|-Procfile
|-server.js
app
文件夹包含我的html,css和main.js文件。 src
文件夹包含我的组件。这是我当前的package.json文件:
{
"name": "",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"serve": "webpack-dev-server"
},
"author": "",
"license": "ISC",
"dependencies": {
"babel-core": "5.8.*",
"babel-loader": "5.3.*",
"express": "^4.14.1",
"react": "^15.4.2",
"react-dom": "^15.4.2",
"webpack": "^1.14.0",
"webpack-dev-server": "^2.3.0"
}
}
这是我的server.js:
var express = require('express');
var app = express();
app.use(express.static(__dirname + '/public'));
app.listen(process.env.PORT || 8080);
我很感激帮助。谢谢。
答案 0 :(得分:0)
输入heroku logs
,这样就可以看到错误了
确保您的 Procfile 如下所示:web: webpack-dev-server
你有路线文件夹吗?如果没有,请执行以下操作:创建路径文件夹,添加名为index.js
的文件。在该文件中,添加:
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
res.status(200).send("Hi, It works!")
});
在server.js
文件中添加
var videos = require('./routes/index');
app.use('/vids', videos);
在本地测试,如果正确,再将其部署到heroku。