Skip to content

Instantly share code, notes, and snippets.

@alexwright
Created November 7, 2016 17:24
Show Gist options
  • Save alexwright/2f92d90b3ea058262ba7ec8267785e69 to your computer and use it in GitHub Desktop.
Save alexwright/2f92d90b3ea058262ba7ec8267785e69 to your computer and use it in GitHub Desktop.
Serving straight from JSX to the browser
require("babel-register")({
extensions: [
".es6",
".jsx"
],
presets: [
"react",
"es2015",
],
});
var React = require('react'),
ReactDOM = require('react-dom'),
ReactDOMServer = require('react-dom/server');
/*
var Page = React.createClass({
render: function () {
return React.createElement('body',
{
className: 'app'
},
'Hello?');
}
render: function () {
return (
<body>
<div>Hello?</div>
</body>
)
}
});
*/
var Page = require('./page.jsx');
var http = require('http'),
server = http.createServer(function (request, response) {
console.log("url: ", request.url);
response.writeHead(200, {
'Content-Type': 'text/html',
})
var page = new Page(),
el = page.render();
console.log('el: ', el);
response.write(ReactDOMServer.renderToString(el));
response.end();
});
server.listen(8501);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment