<StaticRouter>


RESETRUNFULL
// App.jsimport React from "react";import {Switch, Route, Redirect} from "react-router-dom";function About(){
  return <h1>About</h1>;}function Dashboard(){
  return <h1>Dashboard</h1>;}function RedirectWithStatus({ from, to, status }) {
  return (
    <Route
      render={({ staticContext }) => {
        if (staticContext) staticContext.status = status;
        return <Redirect from={from} to={to} />;
      }}
    />
  );}function Status({ code, children }) {
  return (
    <Route
      render={({ staticContext }) => {
        if (staticContext) staticContext.status = code;
        return children;
      }} />);}function NotFound() {
  return (
    <Status code={404}>
      <div>
        <h1>Sorry, can't find that.</h1>
      </div>
    </Status>
  );}export default function App() {
  return (
    <Switch>
      <Route path="/about" component={About} />
      <Route path="/dashboard" component={Dashboard} />
      <RedirectWithStatus status={301} from="/users" to="/profiles" />
      <RedirectWithStatus status={302} from="/courses" to="/dashboard" />
            <Route component={NotFound} />
    </Switch>
  );}

// server.jsimport http from "http";import React from "react";import ReactDOMServer from "react-dom/server";import { StaticRouter } from "react-router-dom";import App from "./App.js";http.createServer((req, res) => {
    const context = {};
    const html = ReactDOMServer.renderToString(
      <StaticRouter location={req.url} context={context}>
        <App />
      </StaticRouter>
    );
    if (context.url) {
      res.writeHead(301, {Location: context.url});
      res.end();
    } else {
      res.write(`
      <!doctype html>
      <div id="app">${html}</div>
    `);
      res.end();
    }}).listen(3000);