diff --git a/src/server.js b/src/server.js
index 55217f7..3b8bd07 100644
--- a/src/server.js
+++ b/src/server.js
@@ -2,7 +2,7 @@ import express from 'express'
import helmet from 'helmet'
import expressStaticGzip from 'express-static-gzip'
import config from '../config/config.json'
-import { serverRender } from './utils/serverRender'
+import { ServerRenderer } from './utils/serverRender'
import { Scanner } from './utils/scanner'
const port = process.env.PORT || 3000
@@ -29,7 +29,8 @@ app.get('/favicon.ico', (req, res) => {
res.status(404).send('Not Found !!!')
})
-app.get('*', serverRender)
+const serverRenderer = new ServerRenderer()
+app.get('*', serverRenderer.render)
app.listen(port, function (error) {
if (error) {
diff --git a/src/utils/serverRender.js b/src/utils/serverRender.js
index 32020ec..fbe63cd 100644
--- a/src/utils/serverRender.js
+++ b/src/utils/serverRender.js
@@ -8,22 +8,29 @@ import manifest from '../../public/static/manifest.json'
import config from '../../config/config.json'
import head from '../../config/head.json'
-export function serverRender (req, res, next) {
- const activeRoute = routes.find((route) => matchPath(req.url, route)) || {}
+export class ServerRenderer {
- const promise = activeRoute.getData
- ? activeRoute.getData(req.path)
- : Promise.resolve()
+ constructor () {
+ console.log('ServerRenderer')
+ }
- promise.then((data) => {
- const markup = renderToString(
-
-
-
- )
-
- res.status(200).send(renderFullPage(markup, data))
- }).catch(next)
+ render (req, res, next) {
+ const activeRoute = routes.find((route) => matchPath(req.url, route)) || {}
+
+ const promise = activeRoute.getData
+ ? activeRoute.getData(req.path)
+ : Promise.resolve()
+
+ promise.then((data) => {
+ const markup = renderToString(
+
+
+
+ )
+
+ res.status(200).send(renderFullPage(markup, data))
+ }).catch(next)
+ }
}
function renderFullPage (html, data) {