35 lines
1003 B
JavaScript
35 lines
1003 B
JavaScript
const path = require('path');
|
|
const express = require('express');
|
|
const fs = require('fs');
|
|
const bodyParser = require('body-parser');
|
|
|
|
const frontendDir = path.resolve(__dirname, 'dist');
|
|
|
|
const app = express();
|
|
|
|
app.set('port', (process.env.PORT || 3000));
|
|
|
|
fs.stat(frontendDir, (err) => {
|
|
if (!err) {
|
|
console.log(`Serving static build from ${frontendDir}`);
|
|
console.log('Run `npm run clean` to return to development mode');
|
|
app.use('/', express.static(frontendDir));
|
|
} else {
|
|
console.log('Serving development build with nwb middleware');
|
|
console.log('Run `npm run build` to create a production build');
|
|
|
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
app.use(require('nwb/express')(express, {
|
|
entry: 'src/index.jsx',
|
|
reload: true,
|
|
}));
|
|
}
|
|
});
|
|
|
|
app.use(bodyParser.json());
|
|
app.use(bodyParser.urlencoded({ extended: true }));
|
|
|
|
app.listen(app.get('port'), () => {
|
|
console.log(`Server started: http://localhost:${app.get('port')}/`);
|
|
});
|