我试图在服务器渲染的应用程序中使用react-helmet。 https://github.com/nfl/react-helmet#server-usage
根据库,服务器渲染部分是使用https://github.com/gaearon/react-side-effect
构建的此外,我看到以下链接说异步并发操作不安全。 https://open.nytimes.com/the-future-of-meta-tag-management-for-modern-react-development-ec26a7dc9183
因此,我通过删除所有异步操作来使其同步。以确保它不会与其他请求混淆。
ReactDOMServer.renderToString(<Handler />);
const helmet = Helmet.renderStatic();
我的疑问是ReactDOMServer.renderToString
是否引发异常,会影响下一个请求。
我需要执行以下操作吗?
try {
ReactDOMServer.renderToString(<Handler />);
const helmet = Helmet.renderStatic();
} catch(ex) {
Helmet.renderStatic();
}
还是有更好的建议?
谢谢。