npm init
mkdir server
cd server
touch index.js
import express from 'express'
let app = express()
// catch all routes
app.get('/*', ( req, res ) => {
res.send('Hello World!')
})
app.listen(3000, () => console.log('Running on port 3000'))
cd .. # exit from server directory
npm install --save-dev babel-cli
npm install --save express
in package.json
...
"scripts": {
"server": "babel-node server/index.js",
...
}
...
configuring babel
{
"presets": [ "es2015" ]
}
npm install --save-dev babel-preset-es2015
npm run server
import express from 'express'
import path from 'path'
let app = express()
// catch all routes
app.get('/*', ( req, res ) => {
res.sendFile( path.join(__dirname, 'index.html') )
})
app.listen(3000, () => console.log('Running on port 3000'))
<html>
<head>
<meta charset="UTF-8">
<title>Red Dice</title>
<meta content="width=device-width, initial-scale=1" name="viewport">
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
npm install save-dev nodemon
in package.json
...
"scripts": {
"server": "nodemon --watch server --exec babel-node -- server/index.js"
...
}
...
import React from 'react'
import { render } from 'react-dom'
import App from './components/App'
render(<App />, document.getElementById('app'))
<html>
<head>
<meta charset="UTF-8">
<title>Red Dice</title>
<meta content="width=device-width, initial-scale=1" name="viewport">
</head>
<body>
<div id="app"></div>
</body>
</html>