禁用 Javascript 的 Gatsby 静态站点

use*_*227 5 javascript progressive-enhancement graceful-degradation reactjs gatsby

是否可以使用 Gatsby 生成可以在浏览器中禁用 Javascript 的情况下查看的静态站点?

我听说 Gatsby 网站可以通过这种方式访问​​,但我尝试了各种 Gatsby starter,包括gatsby-starter-defaultgatsby-advanced-starter,所有这些都只会在禁用 Javascript 时显示索引页面。链接点击返回白屏。

我只是在这里寻找一些优雅的降级 - 我只需要渲染基本的页面和图像,仅此而已。

Saš*_*jak 1

Gatsby 正在生成应用程序的关键部分,这些部分在页面加载时显示,然后使用 React“水合”页面,这意味着它首先显示关键的 HTML 和 CSS,然后才加载网站的动态部分。因此,如果您使用一些无法预渲染的附加反应组件,它们将无法工作,但整个站点应该可以工作。

如果您使用服务工作者并从开发工具禁用 JS,则可能是缓存问题。尝试从浏览器首选项中禁用 JavaScript,并在不打开开发工具的情况下从隐身窗口运行网站。基于 GatsbyJS 的网站应该可以工作。

但是,启用 PWA 和 Service Worker(这确实需要 javascript)后,您的网站将会更快并且使用更少的数据。