我正在研究我创建的这个reactJS简单应用程序,它在本地运行并运行但是当我尝试在Heroku中部署它时,它会抛出错误。我是这个框架的新手。
这是我的package.json
{
"name": "sample",
"version": "1.0.0",
"description": "sample react project",
"main": "index.js",
"scripts": {
"start": "node ./node_modules/webpack-dev-server/bin/webpack-dev-server.js"
},
"author": "matt morales",
"license": "ISC",
"dependencies": {
"ejs": "^2.5.6",
"history": "^1.17.0",
"react": "^15.4.2",
"react-dom": "^15.4.2",
"react-router": "^3.0.2",
"webpack": "^2.2.1",
"webpack-dev-server": "^2.4.1",
"xhr": "^2.4.0",
"babel-core": "^6.2.1",
"babel-loader": "^6.2.0",
"babel-preset-es2015": "^6.1.18",
"babel-preset-react": "^6.1.18",
"webpack": "^1.12.9",
"express": "^4.13.3",
"react": "^0.14.3",
"react-dom": "^0.14.3"
},
"devDependencies": {
"babel-preset-react": "^6.23.0"
}
}
Procfile
web: node server.js
webpack.config
var config = {
entry: './main.js',
output: {
path:'/',
filename: 'index.js',
},
devServer: {
inline: true,
port: 8080
},
module: {
loaders: [{
test: /\.jsx?$/,
exclude: /node_modules/,
loader: 'babel-loader',
query: {
presets: ['es2015', 'react']
}
}]
},
resolve: {
extensions: ['', '.js', '.jsx']
}
}
module.exports = config;
server.js
var express = require('express');
var app = express();
app.use(express.static(__dirname + '/'));
app.listen(process.env.PORT || 8080);
这是文件结构:
错误:
2017-03-10T02:38:33.489173+00:00 heroku[web.1]: State changed from crashed to starting
2017-03-10T02:38:35.909403+00:00 heroku[web.1]: Starting process with command `node server.js`
2017-03-10T02:38:39.567325+00:00 heroku[web.1]: State changed from starting to up
2017-03-10T02:38:52.406683+00:00 heroku[router]: at=info method=GET path="/" host=reactappby.herokuapp.com request_id=ba15080a-49f0-4dd1-ba66-98a71e3b4f41 fwd="121.96.240.43" dyno=web.1 connect=2ms service=30ms status=200 bytes=610 protocol=https