找了很多开源的react SSR 项目 都不算稳定,
最重选择了:react-koa2-ssr
项目搭建成功之后 配置了一下路由发现报错:
BorwserRouter out must have a Dom
大概意思就是说 我们用的BorwserRouter需要外面加一个标签dom
解决方案:
src/index.js
import React from "react";
import ReactDOM from "react-dom";
import { BrowserRouter } from "react-router-dom";
import "./index.css";
import App from "./App.jsx";
import * as serviceWorker from "./serviceWorker";
ReactDOM.hydrate(
<App />
,
document.getElementById("root")
);
serviceWorker.unregister();
复制代码
server/app.js
import { StaticRouter} from "react-router-dom";
ctx.response.body = shtml.replace(
"{{root}}",
renderToString(
<StaticRouter>
<App />
</StaticRouter>
)
);
复制代码
完事就可以了
配置的参考文档:
https://zhuanlan.zhihu.com/p/52693113
(参考其中的相关配置 ,但用的是https://github.com/Bill-Pang/react-koa2-ssr)
作者: Bill 本文地址: http://biaoblog.cn/info?id=1631605948548
版权声明: 本文为原创文章,版权归 biaoblog 个人博客 所有,欢迎分享本文,转载请保留出处,谢谢!