React Helmet 不更新元标题标签

React Helmet not updating meta title tag

我一直在通过以下方式设置我的 react.js SPA 的页面标题:

document.title = {some title}

...到目前为止,一切正常。现在,我还想更新 meta title 标签,所以我安装了 react-helmet.
在我的组件中,我从库中导入了 Helmet 并做了:

render() {
  {/* ... */}
  return (
    <div>
      <Helmet>
        <title>{docTitle}</title>
        <meta name="title" content={docTitle} />
      </Helmet>
      {/* ... */}
    </div>
  )
}

打开页面时,我看到文档标题已正确更新,但在浏览器中检查元素时,我注意到 <meta name="title" 没有更新,而向下几行,<title> 已更新。

我做错了什么?

在我的 <head> 代码中,我在 index.html 文件中添加了以下标记:

<meta name="title" content="Default Title">

当使用 react-helmet 更新该元标记时,在我的浏览器中检查元素时,我仍然在 index.html 文件中看到该标记 un-updated。
然而,我没有注意到的是,在 <head> 的最底部,Helmet 显然添加了这个标签:

<meta name="title" content="Default Title" data-react-helmet="true">

我猜测(并希望)这将被搜索引擎机器人抓取。

更新:
一段时间后,我可以验证 Facebook 和 Google 正确读取了头盔的标题标签。

它没有记录在自述文件中,但您必须将 data-react-helmet="true" 添加到要用 react-helmet 替换的元标记中。例如,在您的 index.html 中,您的元标记应更新为如下所示:

 <meta name="title" content="Default Title" data-react-helmet="true">

这个应该在readme里面,不知道为什么没有,看到评论说已经有人开PR补充了。