如何使用头盔从组件获取异步数据?

时间:2019-11-07 19:01:45

标签: reactjs typescript meta-tags react-helmet

我想在我的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接收文章以在标题中使用它?

0 个答案:

没有答案