澄清Gatsby页面加载网络请求

时间:2017-10-11 05:59:34

标签: gatsby

我正在学习Gatsby如何运作,并且有一个2页的网站,两者都有相互之间的超链接。

由于gatsby将网站编译为带有javascript包的静态页面,我希望html链接点击事件能够触发向服务器加载second页面的页面请求。但是,我没有看到这样的要求。该网站的行为类似于从first页面加载的单页面应用程序。链接点击不会导致second页面的网页请求。同时,我可以看到服务器正确响应了对second页面的请求。在这种情况下,会加载second页面,并通过链接点击导航到first页面也不会导致HTTP请求。

  • 是否按设计?您能否澄清一下编译网站上究竟发生了什么?

  • 如果这样的单页行为是设计的,我想知道它对搜索引擎抓取工具有多大的负面影响?我认为单页应用程序不适合谷歌机器人等索引。

  • 另外,如果我的网页很大(让我们说从降价书或类似文件中呈现)会怎么样?我希望单页应用程序不是一次性加载所有内容的最佳选择。盖茨比在这种情况下应用了什么魔力?

1 个答案:

答案 0 :(得分:3)

是Gatsby是单页网站,是的,它也是一个多页网站。 Gatsby预先将单个页面呈现为html文件,并将相应的反应代码编译成捆绑包。

在冷启动时,任何给定页面都会像任何其他静态页面一样加载到浏览器中,快速且SEO友好。加载静态页面后,反应代码将被引导并有效地运行节目(' a'单页应用程序样式)。相当聪明啊?但是,只需要从服务器获取所需的js包(有时也会预先获取速度)。

盖茨比真的只不过是一个聪明的服务器渲染的HTML反应应用程序,了解内容类型。