Reactjs 使用带有renderToNodeStream的react头盔
在网站上-使用renderToNodeStream()与SSR进行反应-在客户端导航时(不确定是否对SEO有用),我使用React-Healm在头部(ld+json脚本标记)中注入适当的微数据,在服务器上,我“欺骗”了Healm不应该与renderToNodeStream一起工作的事实,如下所示: 客户: (在渲染时调用自动索引方法,不在服务器端执行任何操作)Reactjs 使用带有renderToNodeStream的react头盔,reactjs,microdata,server-side-rendering,node-streams,react-helmet,Reactjs,Microdata,Server Side Rendering,Node Streams,React Helmet,在网站上-使用renderToNodeStream()与SSR进行反应-在客户端导航时(不确定是否对SEO有用),我使用React-Healm在头部(ld+json脚本标记)中注入适当的微数据,在服务器上,我“欺骗”了Healm不应该与renderToNodeStream一起工作的事实,如下所示: 客户: (在渲染时调用自动索引方法,不在服务器端执行任何操作) head(){ 返回( {JSON.stringify(获取***微数据(this.props.**))} ); } 服务器:
head(){
返回(
{JSON.stringify(获取***微数据(this.props.**))}
);
}
服务器:
oreponse.write(
[
``,
``,
(...)
`${getMicroData(***)}/script>`,
(...)
``,
].加入(“”),
);
(...)
const stream=ReactDOMServer[renderMethod](//renderToNodeStream | | renderToStaticNodeStream)
,
);
它似乎工作得很好,只是想确保这段代码没有问题。。(水合作用)
谢谢
head() {
return (
<Helmet>
<script type="application/ld+json">
{JSON.stringify(get***MicroData(this.props.***))}
</script>
</Helmet>
);
}
oResponse.write(
[
`<html>`,
`<head>`,
(...)
`<script type="application/ld+json" data-react-helmet="true">${getMicroData(***)}/script>`,
(...)
`</head>`,
].join(""),
);
(...)
const stream = ReactDOMServer[renderMethod]( // renderToNodeStream || renderToStaticNodeStream
<Provider store={store}>
<StaticRouter location={sURL} context={context}>
<RootContainer ***={***}/>
</StaticRouter>
</Provider>,
);