다음으로 index.server.js 코드를 다음과 같이 작성하세요.
index.server.js
import React from 'react'; import ReactDOMServer from 'react-dom/server'; import express from 'express'; import { StaticRouter } from 'react-router-dom'; import App from './App'; const app = express(); // 서버 사이드 렌더링을 처리할 핸들러 함수입니다. const serverRender = (req, res, next) => { // 이 함수는 404가 떠야 하는 상황에 404를 띄우지 않고 서버 사이드 렌더링을 해 줍니다. const context = {}; const jsx = ( <StaticRouter location={req.url} context={context}> <App /> </StaticRouter> ); const root = ReactDOMServer.renderToString(jsx); // 렌더링을 하고 res.send(root); // 클라이언트에게 결과물을 응답합니다. }; app.use(serverRender); // 5000 포트로 서버를 가동합니다. app.listen(5000, () => { console.log('Running on http://localhost:5000'); });