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补充了。
我一直在通过以下方式设置我的 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补充了。