unpkg/modules/actions/serveMainPage.js

27 lines
774 B
JavaScript
Raw Normal View History

import React from 'react';
2019-01-14 21:28:52 +00:00
import { renderToString } from 'react-dom/server';
import MainTemplate from '../client/MainTemplate';
import MainApp from '../client/main/App';
import createHTML from '../client/utils/createHTML';
import getEntryPoints from '../utils/getEntryPoints';
import renderTemplate from '../utils/renderTemplate';
export default function serveMainPage(req, res) {
2019-01-14 21:28:52 +00:00
const content = createHTML(renderToString(React.createElement(MainApp)));
const entryPoints = getEntryPoints('main', {
es: 'module',
system: 'nomodule'
});
const html = renderTemplate(MainTemplate, { content, entryPoints });
res
.set({
2019-01-15 02:41:42 +00:00
'Cache-Control': 'public, max-age=0, must-revalidate', // do not cache
'Cache-Tag': 'main'
})
.send(html);
}