Skip to content

Instantly share code, notes, and snippets.



Last active Aug 7, 2019
What would you like to do?
Routing in server.js
import express from "express";
import React from "react";
import { renderToString } from "react-dom/server";
import { StaticRouter as Router } from "react-router-dom";
import path from "path";
import App from "./client/app";
const app = express();
const port = 3000;
import Routes from "./routes";
const HTML = (req, context) => {
const body = renderToString(
<Router location={req.url} context={context}>
<App />
return `<html>
<title>React Basic SSR</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<body style="margin:0;">
<div id="app">
<script src="client.js"></script>
const context = {};
app.get("*", (req, res) => {
return res.send(HTML({ url: "/404" }, context));
Routes.forEach(route => {
app.get(route.url, (req, res) => {
return res.send(HTML(req, context));
app.listen(port, () => console.log(`Example app listening on port ${port}!`));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment