我有一个简单的 node.js 应用程序,它应该使用 React 的 renderToString
函数响应纯 HTML 请求。渲染和响应的代码如下所示:
const markup = renderToString(
<Provider {...stores}>
<Router location={req.url} context={{}} history={browserHistory}>
<Routes/>
</Router>
</Provider>
);
res.status(200).send(markup);
以及 HTML 响应:
<section data-reactroot="">
<h1>Header</h1>
<div>Body</div>
</section>
我不希望输出中有任何反应痕迹。有没有办法在使用 React 渲染时不包含 data-reactroot
或任何其他 React 痕迹?
最佳答案
只需使用 renderToStaticMarkup
而不是 renderToString
并且在输出中不会有任何反应痕迹(引用 https://reactjs.org/docs/react-dom-server.html#rendertostaticmarkup )
关于javascript - Node/ react 如何返回用 react 渲染的纯html并发送给客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48957606/