Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使盖茨比渲染头服务器端?_Javascript_Gatsby_Prerender - Fatal编程技术网

Javascript 如何使盖茨比渲染头服务器端?

Javascript 如何使盖茨比渲染头服务器端?,javascript,gatsby,prerender,Javascript,Gatsby,Prerender,我正在使用头盔向盖茨比网站添加一些SEO标签,大致如下(这种方法似乎是): 我注意到,如果我执行了盖茨比构建,运行web服务器并在浏览器中打开页面,我可以在inspector中看到正确呈现的标题。但是,如果我在IDE中打开index.html,我就找不到任何标记。因此,标记将在客户端呈现 我希望将SEO标记呈现在服务器端,这样我就不会依赖web爬虫来解析页面上的Javascript。如何在盖茨比中做到这一点?只需将它们放在HTML中,而不是在JS中使用SEO插件就可以了?其中许多都需要动态计

我正在使用头盔向盖茨比网站添加一些SEO标签,大致如下(这种方法似乎是):


我注意到,如果我执行了盖茨比构建,运行web服务器并在浏览器中打开页面,我可以在inspector中看到正确呈现的标题。但是,如果我在IDE中打开
index.html
,我就找不到任何标记。因此,标记将在客户端呈现


我希望将SEO标记呈现在服务器端,这样我就不会依赖web爬虫来解析页面上的Javascript。如何在盖茨比中做到这一点?

只需将它们放在HTML中,而不是在JS中使用SEO插件就可以了?其中许多都需要动态计算。我想把它们放在由JS生成的HTML中,而不是放在客户端JS中,但我不知道如何将它们放在HTML中。
<Helmet
  …
  link= {
    canonicalLink 
      ? [{ rel: 'canonical', key: 'canonical', href: canonicalLink }]
      : []
  }
  meta={[
    {
      name: `description`,
      content: metaDescription,
    },
    …
  ].concat(meta)}
/>