我想在我的React应用程序中生成动态元标记。我正在使用Helmet,但有一个问题,因为在调用Helmet.renderStatic()后它为空。 我的index.js文件:
const store = createStore(rootReducer);
ReactDOM.render(<Provider store={store}><App /></Provider>,
document.getElementById('root') as HTMLElement
);
const helmet = Helmet.renderStatic();
console.log('meta', helmet.meta.toString());
registerServiceWorker();
我的组件看起来像这样:
public render() {
const { article } = this.state;
return (
<div className="article-published">
<Helmet>
<meta charSet="utf-8" />
<meta property="og:title" content={article.title} />
</Helmet>
问题是我正在调用API来获取文章,所以当我在index.js中获得头盔时,文章还不存在,所以我的helmet.meta没有内容。
如何让它等待从API接收文章以在标题中使用它?