reactjs - Twitter 卡片元标记在 index.html 中工作,而不是在 React Helmet 中

标签 reactjs twitter-card react-helmet

我在 App.js 中使用了下面的 React Helmet 代码来渲染 Twitter 卡片元数据。

          <Helmet>
              <meta charSet="utf-8" />
              <title>
                {`xxxxx`}
              </title>
              <meta
                name="description"
                content={`xxxxx.`}
              />
              <meta name="twitter:card" content="summary_large_image" />
              <meta
                name="twitter:title"
                content="xxxxx"
              />
              <meta
                name="twitter:description"
                content="xxxx."
              />
              <meta name="twitter:site" content="@xxxx" />
              <meta
                name="twitter:image"
                content="https:xxxx"
              />
              <meta name="twitter:creator" content="@xxxx" />
            </Helmet>

当我进行浏览器检查时,元标记确实出现了。但是在推特卡验证器( https://cards-dev.twitter.com/validator )中,我得到了 错误:未找到卡(卡错误)。

如果我在 index.html 中添加相同的元标记,它会起作用。 但是,我希望 Twitter 卡在 Helmet 中工作,以便我可以动态更改它。没有服务器端渲染有可能吗?

最佳答案

Facebook /推特/等。爬虫不呈现 JavaScript,因此除非您在服务器上呈现 Helmet 内容或在 index.html 文件中包含卡片元标记,否则它们永远不会获取您的客户端更新。

关于reactjs - Twitter 卡片元标记在 index.html 中工作,而不是在 React Helmet 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59222217/

相关文章:

javascript - 在组件中 react 显示图像

javascript - React-router v4,URL 更改但组件不呈现

javascript - 在reactJS中使用bootstrap carousel当前的幻灯片数量

javascript - 如何使用 id React Js 和 Firebase 显示数据

ios - 带Open Graph的iMessage中视频的丰富链接预览

html - 图片社交元标签 - 属性 ="og:image"名称 ="twitter:image"itemprop ="image"

audio - 实现类似soundcloud的Twitter声卡

javascript - 如何以及在哪里访问 gatsby 中的 html 正文

javascript - 如何在 Docusaurus V2 的 index.html 头部添加自定义脚本?