首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Gatsby 创建一个博客

Gatsby 是一个令人难以置信的静态站点生成器,它允许使用React作为渲染引擎引擎来搭建一个静态站点,它真正具有现代web应用程序所期望的所有优点。...它通过在构建时通过服务器端渲染动态的 react 组件呈现为静态 HTML 内容。...为了解决我们想要的这个博客的功能,我们将使用以下插件: gatsby-plugin-catch-links 实现了历史 pushState API, 不需要页面重载就可以导航到博客的不同页面 gatsby-plugin-react-helmet...接下来:以编程方式创建必要的静态页面(并将模板注入) Gatsby 的 Node API,让我们开始吧。 此时需要注意的一点是,GraphQL 查询是在构建时进行的。...创建静态页面 Gatsby 公开了一个强大的Node API,它允许创建动态页面这样的功能(博客文章页!),扩展 babel webpack 配置,修改所创建的节点页面等。

2.4K30

学习gatsby,从这里开始!

--- 二、Gatsby 简介 1、图解系统结构 数据统一:从 不同数据源(下图中 CMS、Private API 等) 获取数据,形成统一的数据结构( GraphQL Data Layer) 数据查询...:通过 GraphQL 查询 GraphQL Data Layer 中的数据 展示数据:通过React 编写HTML页面,把数据展示出来。...使用 Gatsby CLI 工具,三句命令就可以新建一个静态网站。详情步骤,看这里! --- 四、怎么新增网站页面? 浏览器打开的URL是怎么跟项目中的代码页面 (js文件) 对应起来的?...这种 URL 代码文件 之间的对应关系就称之为页面路由。那么Gatsby 中怎么新建代码页面?其页面路由又有哪些规则? 1、新建页面及其路由 详细步骤,看这里!...使用了插件 react-helmet。 --- 七、部署 怎么部署发布gatsby项目? 第一步:有一个备案过的域名。可以在阿里云上进行域名注册和备案; 第二步:需要一个服务器。

2.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

一杯茶的时间,上手 Gatsby 搭建个人博客

且 VuePress 目前还是针对静态文档优化比较多,作为博客依然比较简陋。 这时 @unicar[8] 正好推荐了基于 ReactGatsby[9]。...为什么用 GraphQL 在上一节介绍了选择 Gatsby 的原因,其中提到了 Gatsby 使用 GraphQL 。大家可能会有疑惑,不是建静态博客么,怎么会有 GraphQL?...通过 GraphQL 统一管理实际上非常方便,因为作为一个数据库查询语言,它有非常完备的查询语句, JSON 相似的描述结构,再结合 Relay 的 Connections 方式处理集合,管理资源不再需要自行引入其它项目...在 Gatsby 中,根据 js 文件的位置不同,使用 GraphQL 有两种形式,且 Gatsby 对其做了魔法,在 src/pages 下的页面可以直接 export GraphQL 查询,在其它页面需要用...Netlify CMS 的优点是开源免费,文章跟项目源码在一起,界面可以高度自定义,甚至可以自行扩充 React 组件,基本满足简单的博客编写需求。

3.2K20

创建 React 应用的 7 种方式,你用过几种?

老项目迁移会存在一定成本,可以参考我之前的文章《 React 应用迁移至 Vite》 四:Gatsby Gatsby 不仅仅是一个静态网站生成器,它更是一个渐进式 Web 应用生成器。...,然后在函数中使用查询的数据进行渲染。...ISR – 增量静态再生,可以再次从 API 获取数据,并且生成静态页面,最适合常见的资讯类、新闻类网站。...例如,在 Next.js 中,可以使用 getServerSideProps 方法获取数据,并在服务端渲染页面,提升首屏加载速度。 支持静态导出,可以提升 SEO。...例如,在 Next.js 中,可以使用 next export 命令,项目打包为静态文件,并发布到 CDN 上,让搜索引擎更容易抓取页面

6.3K10

2018 年前端开发五大趋势

Gatsby 如果你的预算比较紧张,但是同时又希望在你的项目中只使用高级技术,那么你一定要尝试 GatsbyGatsby 是 Kyle Matthews 为静态网站的创建而构建的新型解决方案。... Jekyll,Hugo Hexo 等流行解决方案不同,这个静态生成器不使用模板,而是信赖于 Webpack 和 React 组件(注意 React 官网本身也是在 Gatsby 的帮助下编写的)...因此,你可以获得自动更新和即时页面转换等优势。从1.0版本开始,Gatsby 使用了上面提到的 GraphQL。...因此,在构建过程,它可以从多个 GraphQL API 中获得数据,然后使用它们创建一个完全静态React 客户端应用程序。...这就是为什么静态网站在这些年变得如此流行。除了我们上面描述的明显的优势外,这种页面有一个重要的缺点 —— 它的内容不容易被编辑。

2.9K40

你的博客用不着什么JavaScript框架

当我第一次听说我可以编写 React使用这个很酷的 GraphQL 新玩意儿,同时还能输出不需要 JavaScript 的静态页面时,我很想尝试它一下。...用户首次访问 Gatsby 网站时会发生这些事情: 用户请求一个页面。 服务器静态生成的 HTML 文档发送到用户的浏览器,然后浏览器开始渲染页面。...不再需要整页重新加载的问题在于,浏览器和辅助技术页面加载用作触发某些有用行为的信号,包括宣布新页面的标题键盘焦点重置到文档的开头。...静态渲染和水化的页面还是比完全客户端渲染的 React 应用(如 create-react-app 生成的页面)要好得多,后者没有 JavaScript 就没法用。...黑暗模式切换——虽然我可以只用 CSS 来实现,无需访问 cookies 本地存储,但我没办法页面之间保持设定的值。 我是否会在不久的将来在网站上加入 JavaScript 呢?

4.1K10

进击的JAMStack

简单来说,Gatsby是一个可以让开发者使用React,GraphQL等现代技术快速开发网站的静态网站生成器(static-site generator)。...到这里你可能会问,既然服务端渲染这么浪费资源,我们不进行SSR,直接webpack打包生成的文件放在一个静态服务器然后页面都是在浏览器渲染不就行了吗?...动态内容和静态内容区分开来还有另外一个好处,就是我们后端接口的职责更加明确了,API接口的数量会变得更少,性能也会变得更好。...除此之外,由于Gatsby使用React,所以它间接上接入了React的生态系统,这样开发者在开发Gatsby应用时就可以使用React生态的各种最佳实践和库实现了,这无疑可以大大提高我们的开发效率。...上面在介绍JAMStack优势的时候,我提到了一点就是使用JAMStack其实你可以免费部署你的应用,因为你可以前端的静态代码放在一些免费的静态资源托管服务器,然后后端使用一些免费的Baas API服务

2.8K30

如何利用机器学习和Gatsby.js创建假新闻网站​

目录 Gatsby.js设置 配置 页面布局 机器学习设置谷歌Colab 假文章代 Google Drive API 编程式页面生成 部署 改进的领域 如果您想要更深入地了解这个项目,或者想要添加到代码中...gatsby-node.js 此文件用于实现api。这些api可以使用GraphQL从数据层中获取数据。在处理程序化页面生成时,我们更深入地研究这个文件的内容。...我们可以使用名为Gatsby -source-drive的插件文件直接导入到Gatsby的本地文件系统中。这需要在谷歌api中设置一个服务帐户。...创建页面的两个大步骤是: 1)为本地文件系统中的每个标记文件创建slugs(唯一的url) 2)使用页面模板使用slugs和通过GraphQL获取的其他信息创建实际的web页面。...中,为每个markdown文件创建数据节点,然后所有这些节点将与页面模板一起使用,以创建实际的页面

4.5K60

Vue.js最佳静态站点生成器对比

用户变多后,这个框架开始触角伸向了静态站点生成,一个曾经由 React 统治的领域。...就像 React 这边的 Gatsby 和 NextJS 一样,Vue.js 这边支持静态网站生成的框架也有不少。但考虑到它们提供的众多功能,想要挑一个合适的并不容易。... React 中的 Gatsby 相似,Gridsome 是一个数据驱动的框架。Gridsome 使用一个 GraphQL 层从各种源中获取内容,然后从中动态生成页面。... Gatsby 和 Gridsome 类似,Saber 允许你使用你想用的数据来创建静态网站。你可以从不同的文件系统中提取数据。有了 Saber,你就不用操心 GraphQL 了。...对比基于 Vue.js 的和基于 React静态站点生成器,我们可以看到 Nuxt.js、VuePress 和 Gridsome 等框架具有 Gatsby 和 NextJS 竞争的实力。

4.7K10

2019-Web开发技术指南和趋势

学会如何部署一个静态网站到服务器 注册一个域名(NameCheap, Google Domains) 管理共享主机虚拟机(Inmotion, Hostgator, Bluehost) FTP, SFTP...文件上传(Filezilla, Cyberduck) 静态页面托管(Netlify, Github Pages) 1.4 SASS预处理器 ?...成为一个全栈工程师软件工程师, 你需要学习一个服务端语言和相关技术 学习的顺序: 基础的后端语言语法 数据结构和工作流 包管理 HTTP/路由 3.2 服务端框架 ?...只查询你想要的东西 前端和后端可以合作得更为顺利 查询语句非常简单且很像JSON语句 Apollo是一个发送请求到GraphQL的客户端 使用的是Gatsby静态站点生成器 4.4 TypeScript...无需创建和管理自己的服务器 使用第三服务执行“无服务器功能” 例如 AWS, Netify & Firebase 在Gatsby静态站点生成器很流行 无服务框架 4.6 AI和机器学习 ?

3.3K20

前端之变(三):变革突破

难以一个复杂的页面拆成不同的小页面来实现。...相比,React等这些技术能做到 支持基本的编程能力,if,for等都可以使用 支持组件化能力,把一个大的页面拆成不同的组件页面。...比如在PCX中,对于聊天,聊天分很多种类,比如文本,图片,语音,在React中,你可以这个复杂的页面大而划小,分而治之 ?...image-20210529135659298 如上图所示:每一种消息类别 ,使用一个独立的子类来实现。 这种就完全具备了现代化语言的能力。在以前的HTML+JS的时代,完全没有办法做到。...在其它方向都有自己的依赖管理 后端是使用mavengradle来进行依赖管理 iOS最流行的是cocoapods Android是gradle来管理依赖 看到没,前端终于和其它技术方向站在同一起跑线上了

2K20

2019-Web开发技术指南和趋势

学会如何部署一个静态网站到服务器 注册一个域名(NameCheap, Google Domains) 管理共享主机虚拟机(Inmotion, Hostgator, Bluehost) FTP, SFTP...文件上传(Filezilla, Cyberduck) 静态页面托管(Netlify, Github Pages) 1.4 SASS预处理器 ?...成为一个全栈工程师软件工程师, 你需要学习一个服务端语言和相关技术 学习的顺序: 基础的后端语言语法 数据结构和工作流 包管理 HTTP/路由 3.2 服务端框架 ?...只查询你想要的东西 前端和后端可以合作得更为顺利 查询语句非常简单且很像JSON语句 Apollo是一个发送请求到GraphQL的客户端 使用的是Gatsby静态站点生成器 4.4 TypeScript...无需创建和管理自己的服务器 使用第三服务执行“无服务器功能” 例如 AWS, Netify & Firebase 在Gatsby静态站点生成器很流行 无服务框架 4.6 AI和机器学习 ?

3.2K20

为什么用 React 一定要配合框架(Next,Remix)使用

React 确实提供了内容渲染为 HTML 的 API,这可能适用于你的 case。然而,对于应用程序的其余部分体验,开发者仍然需要修修补补。而框架则会把这些体验给统一起来。...听起来好像所有 React 应用程序都应该进行服务器端渲染?现实情况当然更复杂。对于某些路由,生成静态资源并使用边缘网络(资源放置在靠近用户的位置)可能会更好。...对于其他页面,客户端渲染的模型可能更好。你可以页面的 JavaScript 下载一次,资源缓存在设备上(文件名中有给定版本的唯一 hash),然后快速在页面之间导航(给用户提供 SPA 的感觉)。...没有一种银弹单一的渲染策略适用于所有情况。静态渲染、服务器渲染客户端渲染都是根据需求的有效选择。框架可以让你能够在每个路由上做出此决策,而无需一股脑把整个应用程序变成静态站点服务器渲染。...使用框架的好处之一是它们都支持在你自己的基础设施上进行托管(通过 Docker、Node.js 其他方式,如上传静态资产),或者使用托管平台,这些平台自动化了软件的迭代和交付的每个过程。

43040

2021年前端编程发展趋势

Gatsby静态站的崛起 虽然单页应用程序 (SPA) 使网络更加活跃和强大。但是,SPA 的广泛采用也存在很大的弊端,它们对 SEO 不友好,这对于网站的推广非常不利。...为了克服SEO的障碍,Gatsby出现了,它通过回归静态站的方式让SEO优化变得非常方便。 丰富的插件机制,热重载编辑,页面自动转换,这些特性都让gatsby赢得了更多开发人员的青睐。...ReactJS依然广受欢迎 虽然vue在民间保持了较高的占有率,但是在各大企业中,react还是处于领先的地位。 得益于丰富的组件库,使用react会让你的开发少走不好弯路。...它通过静态网站生成器来生成静态页面进行CDN缓存,大大加速了网站的访问速度。对于动态内容的获取,它通过使用无头cms对外界提供api来进行内容渲染。...微前端走进人们的视野 我们都知道对于复杂的业务,后端往往采用微服务来进行开发部署。那么对于复杂的前端页面有没有相对应的技术来解决呢?

39030

一个治愈JavaScript疲劳的学习计划

现在将其一个2016 “现代” web app(也称为“单页面应用程序”)进行比较: ? 注意到区别了吗?...我之前确实说过使用单页应用去进行静态内容的开发是大材小用,但 React 有个秘密武器: Gatsby,一个能让你“欺骗”并且利用 React 所有好处的静态站点生成器,而且没有任何缺点。 ?...第4周:着手状态管理 现在你应该有能力用一些静态内容去构建一个简单的 React 项目了。 但真正的 web apps 却不是静态的:它们需要从某些地方获取它们的数据,一般是数据库其他某些地方。...然而 REST API 公开了多个REST路由,每个 REST 路由都可以访问预定义的数据集(例如 /api/posts,/api/comments 等),GraphQL 公开了一个端点,可以让客户端查询所需的数据...GraphQL 已经在过去的一年更久得到了很快的发展,已经有很多的项目(例如 Gatsby,我们在第2周用到的)计划着要去使用它了。

75320

【前端必看】2017 年 JavaScript 全面崛起大运势

此外,随着支持静态类型的 TypeScript 加入,Angular 也势必能得到更多熟悉 C# Java 的后端开发人员人观注青睐。...正如这个视频使用 React Native 来跨平台编译APP中的口号:“一次编写,到处运行”可谓名副其实! 编译工具 这里我们讨论那些编译到标准 JavaScript 代码的语言。...目前有许多项目使用了它,包括今年最流行的两个项目:Create React App 和 Gatsby。...它新增了许多新功能来助你优化静态网站: 快速浏览和导出速度; 主动预加载机能; 智能代码分解 (模板 + 网页数据); Gatsby 使用 React 来做视图层(View Layer),构建时候则用...值得注意的是今年最有人气的静态网站生成器 Gatsby 也在数据处理中使用了 GraphQL 。

2.6K50

9个不错的前端开源项目

您将学到什么 在构建此应用程序时,您将使用相对较新的Hooks API来提高React技能。该示例项目利用了React组件,许多hook,一个外部API,当然还有一些CSS样式。...React:一个很好的框架,结合了服务器端渲染和单页面应用程序的功能。...您将学到什么 这个示例项目教您如何使用Nuxt.js构建完整的网站——从初始设置到最终部署。 它利用了Nuxt必须提供的许多很酷的功能,例如页面和组件以及SCSS的样式。...,但是使用Gatsby,您可以在使用React的同时创建高性能网站——这是一个了不起的组合。...但是对于Gridsome和Gatsby也是如此。两者都使用GraphQL作为数据层,但是Gridsome使用VueJS。这也是一个很棒的静态网站生成器,可帮助您创建出色的博客: ?

6K30
领券