我正在尝试构建一个在将道具发送到<Helmet>之前需要获取数据的应用程序,但我不知道这是否可能,因为我在文档中没有看到类似的东西。
并且无法在头盔组件中显示此内容。内容始终为empty
Helmet组件是HtmlPage组件。在下面的代码中,我们收到了一个SEO undefined错误。
https://github.com/nfl/react-helmet/issues/409
<HtmlPage
{...this.props.client.info.SEO}
>
<ThemeProvider theme={this.state.theme}>
<div className='wrapper' id='wrapper'>
{loading && <Loading
client={this.state.client}
/>}
<div className="content" id='page-wrapper'>
<h1>Its ok for now ====</h1>
<p>
{JSON.stringify(this.props.client)}
</p>
<div>
{!!this.props.client.info &&
<p>{JSON.stringify(this.props.client.info.SEO)}</p>}
</div>
</div>
</div>
</ThemeProvider>
</HtmlPage>react-helmet-async不工作。
发布于 2019-01-23 00:49:30
您需要实现第二个renderPass以允许它收集header元素。为此,我尝试了react-tree-walker,但它不起作用。最后,我使用renderToStaticMarkup添加了第二个renderPass。例如:`
const stream = renderToNodeStream(<App preloadedState={preloadedState} />);
// extra render pass
renderPass(<App preloadedState={preloadedState} />);`
https://stackoverflow.com/questions/52768134
复制相似问题