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

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

Gatsby ,根据 js 文件位置不同,使用 GraphQL 有两种形式,且 Gatsby 对其做了魔法,在 src/pages 下页面可以直接 export GraphQL 查询,在其它页面需要用...一个快速上手方式是访问项目开发时(默认 http://localhost:8000) /___graphql 页面,通过 GraphiQL 编辑器右侧可以浏览所有能够查询资源。...上面代码可以注意到还有个 context 域,这个域中数据会被传到 component props 。这样我们在模板组件通过 pageContext.id 便可判断当前渲染文件。...通过实现自定义路径基本上可以了解 Gatsby 页面生成方式了。下节我会继续谈谈其它个性化配置,如草稿模式显示上下篇博文。 草稿模式 草稿模式即可以将文章保存为草稿而不被渲染出来。...上下篇 在文章页面我们通常会加入上下篇来引导继续浏览。这里我们同样在 createPages 钩子处理,但这回我们添加到 context 域中,这个域里数据会作为 props 传到模板组件

3.2K20

Gatsby 创建一个博客

最后,我们有一个针对博客文章 React 模板,还有一个连接 GraphQL 查询来查询博客文章,并将 React 模板注入到查询数据。...接下来:以编程方式创建必要静态页面(并将模板注入)与 Gatsby Node API,让我们开始吧。 此时需要注意一点是,GraphQL 查询是在构建时进行。...我们 GraphQL“形状”直接反映在这个数据对象,因此,当我们在GraphQL博客文章模板查询时,我们从该查询中提取每个属性都将可用。...GraphQL查询数据将注入到 stringified parsed 后 React 模板。哇,它真的开始工作起来了!...你不知道,我们在 Gatsby 做到这一点有多容易,使用我们在博客模板中使用类似策略,例如一个 React 组件一个 GraphQL 查询。

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

学习gatsby,从这里开始!

一、Gatsby 是什么? 可建立一个访问速度极快静态网站。...--- 二、Gatsby 简介 1、图解系统结构 数据统一:从 不同数据源(下图中 CMS、Private API 等) 获取数据,形成统一数据结构( GraphQL Data Layer) 数据查询...:通过 GraphQL 查询 GraphQL Data Layer 数据 展示数据:通过React 编写HTML页面,把数据展示出来。...这种 URL 与 代码文件 之间对应关系就称之为页面路由。那么Gatsby 怎么新建代码页面?其页面路由又有哪些规则? 1、新建页面及其路由 详细步骤,看这里!...--- 4、head HTMLhead部分数据对于 SEO 极其重要,用 bolog 模板生成 Gatsby 项目,已经生成了SEO组件(src/components/seo.js),直接使用,完成页面

2.1K20

【Web架构】静态站点生成器概述 Gatsby ,Hugo Jekyll对比

这可能是一个困难过程,当您打算进行更改时,许多问题会浮出水面,而扩展不是您所期待Gatsby、HugoJekyll是最受欢迎静态站点生成器三种,它们受欢迎原因有很多。...Gatsby还支持GraphQL,这意味着数据查询变得更加容易。由于有了GraphQL, Gatsby可以生成能够访问利用来自不同来源数据站点。...它支持GraphQL。 大量插件都是可用——谈谈庞大用户社区好处吧。 解释性教程不难找到,文档也很棒。 缺点 使用Gatsby需要大量JavaScript、ReactGraphQL知识。...缺点 学习Golang 可能是困难。 不支持XML作为数据文件类型。但是,支持YAML、JSONCSV。...虽然Jekyll对页面内容使用Markdown,但它也使用液体模板语言来处理页面。Jekyll也使用Sass,这对于喜欢CSS预处理器开发人员来说非常重要。

2.9K20

前端|如何在SpringBoot通过thymeleaf模板访问页面

本文首发于微信公众号:"算法与编程之美" Thymeleaf是适用于Web独立环境现代服务器端Java模板引擎。Thymeleaf主要目标是在开发工作带来优雅自然模板。...在传统web开发时通常使用是jsp页面,首先需要在pom文件引入springmvc相关包,然后写springmvc配置文件(包括访问资源路径解析),之后还需再web.xml配置访问路由。...这样就实现了通过thymeleaf模板访问html文件。 在浏览器输入:localhost://8080/success 就能看到刚刚success.html这个页面。...实现了这个功能我们就能用thymeleaf语法了。它作用就是为了使用户页面业务数据相互分离而出现,将从后台返回数据生成特定格式文档,这里说特定格式一般都指HTML文档。...它优点是语法优雅易懂、原型即页面、遵从web标准。 原型即页面是它特色,所谓原型即页面,就是你写html,静态访问是什么样,动态访问还是这样,只不过动态时候会把数据填充进去。

1.8K20

博客用不着什么JavaScript框架

它有一个由 GraphQL 支持数据层,并将所有内容输出到静态文件,使你可以在几乎任何地方托管它。...用户首次访问 Gatsby 网站时会发生这些事情: 用户请求一个页面。 服务器将静态生成 HTML 文档发送到用户浏览器,然后浏览器开始渲染页面。...单页应用程序访问性 单页应用程序这种网站放弃了传统 Web 导航方法,即通过加载新 HTML 文档来加载新内容;相反,它使用 AJAX History API 之类 JavaScript...Eleventy 为你提供了十种可以任意搭配模板语言选项,包括 markdown、nunjucks liquid;这意味着我可以从 Craft 复制并粘贴旧模板,更改文件扩展名,并做一些细微调整就能运行在...Eleventry 还有一些让我感到困惑事情:我有一阵子一直搞不懂它分页功能,认为它只是将帖子分页到指定大小一些组,之后才意识到它可以动态生成全新页面;我还发现自己在同一文件混用了模板语言:

4.1K10

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

通过 Gatsby 建立网站,很容易被搜索引擎检索到,而且页面的渲染性能非常好,完美支持个人网站、博客、文档网站,甚至是电子商务网站。...更为复杂 ⛔️ 需要了解 GraphQL Node.Js 相关知识 ⛔️ 配置繁重 ⛔️ 构建时间会随着内容增加而变长 ⛔️ 云服务需要付费 值得强调是,丰富插件系统是选择 Gatsby 重要原因...ISR – 增量静态再生,可以再次从 API 获取数据,并且生成静态页面,最适合常见资讯类、新闻类网站。...例如,在 Next.js ,可以使用 getServerSideProps 方法获取数据,并在服务端渲染页面,提升首屏加载速度。 支持静态导出,可以提升 SEO。...创建完成后,进入项目目录,安装依赖: 也可以选择 ant design pro 模板 vue 模板,选择完成后会自动安装依赖。

6.4K10

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

一个重要插件是Gatsby -source-filesystem,它允许Gatsby从存储在本地文件系统文件中提取数据。...其他插件不太重要,就不介绍了。 gatsby-node.js 此文件用于实现api。这些api可以使用GraphQL数据获取数据。在处理程序化页面生成时,我们将更深入地研究这个文件内容。...同样,确保您gatsby-config.js文件包含 gatsby-source-filesystemgatsby-transformer-remark。这些对于页面生成非常重要。...创建页面的两个大步骤是: 1)为本地文件系统每个标记文件创建slugs(或唯一url) 2)使用页面模板使用slugs通过GraphQL获取其他信息创建实际web页面。...,为每个markdown文件创建数据节点,然后所有这些节点将与页面模板一起使用,以创建实际页面

4.5K60

2018 年前端开发五大趋势

此外,Vue.js支持声明式呈现,异步DOM更新,双向数据绑定,以及严格遵守Web组件规范HTML模板简单集成。...这就是GraphQL用武之地,使用GraphQL而不是使用单独端点来访问每个资源。你可以使用单个端点,该端点能够同时处理涉及多个数据复杂查询。...与 Jekyll,Hugo 或 Hexo 等流行解决方案不同,这个静态生成器不使用模板,而是信赖于 Webpack React 组件(注意 React 官网本身也是在 Gatsby 帮助下编写)...因此,你可以获得自动更新和即时页面转换等优势。从1.0版本开始,Gatsby 使用了上面提到 GraphQL。...除了我们上面描述明显优势外,这种页面有一个重要缺点 —— 它内容不容易被编辑。静态网站生成器专门用于解决此问题,Gatsby 是其中最好,感谢 GraphQL

2.9K40

Gatsby入门指南—添加上一页下一页功能(完结篇)

1.调整gatsby-node 这个就简单了,打开gatsby-node.js,增加代码如下: const path = require("path"); exports.createPages...path title } } } ` export default Template; 打开首页,点击页面跳转到对应页面大功告成...总结: 到此,通过gatsby就快速搭建了一个博客网站,我们只需书写markdown文件就能生成对应网页了。至于网页美化,那是切图事儿,我就不在这里墨迹了。...当然了你不想切图可以使用各种现成UI库,比如antdesign。我网站就是直接用antdesign....如果你觉得深入学习gatsby太麻烦,你可以直接用我写好模板就行, 开源库地址,直接克隆就可以用了: https://github.com/leolau2012/gatsby-teach 但是基础还是要会

89840

Gatsby入门指南—添加上一页下一页功能(完结篇)

1.调整gatsby-node 这个就简单了,打开gatsby-node.js,增加代码如下: ​ const path = require("path"); exports.createPages =...formatString: "MMMM DD, YYYY") path title } } } ` export default Template; 打开首页,点击页面跳转到对应页面大功告成...总结: 到此,通过gatsby就快速搭建了一个博客网站,我们只需书写markdown文件就能生成对应网页了。至于网页美化,那是切图事儿,我就不在这里墨迹了。...当然了你不想切图可以使用各种现成UI库,比如antdesign。我网站就是直接用antdesign....如果你觉得深入学习gatsby太麻烦,你可以直接用我写好模板就行, 开源库地址,直接克隆就可以用了: https://github.com/leolau2012/gatsby-teach 但是基础还是要会

90330

进击JAMStack

除了Markdown文件之外,JAMStack静态数据源还可以是其它东西,例如我们后面说到Gatsby(JAMStack一种实现)就允许通过插件方式使用SQL直接读取数据内容来生成静态页面...对于那些不经常变动而且希望被搜索引擎收录静态内容,Gatsby会在Webpack打包阶段就生成,这样就不需要在用户访问页面的时候才浪费资源来渲染页面了,而且这些静态文件还可以通过CDN来优化用户体验...templates: 网站模板文件夹,该文件夹底下只有一个叫做blog-post.js模板文件,在Gatsby构建网站时候blogs文件夹底下每一个Markdown文件都会通过这个模板文件生成一个对应...生成文件可以直接使用静态网站服务器来为用户提供服务,同时你还可以把它们放在CDN来让用户访问起来更快。...更好开发者体验 拿我们前面提到Gatsby来举例,它就允许我们使用一些现代前端技术来进行开发,例如React,Styled-componentsGraphQL等,这些都是我们前端开发者十分熟悉技术了

2.8K30

2023 年,这 9 个项目助你成为前端高手

你将学到什么 在这个项目中,你将学习如何搭建 Next.js 开发环境——创建新页面组件、获取数据、样式化部署 App。...技术栈特性 Next.js 组件页面 数据抓取 样式 部署 SSR SPA 通过真实例子(比如电子商务展示)来学习新技术总是很好。...这个项目看起来是这样。 你将学到什么 在这个教程,你将学习如何利用 Gatsby、React GraphQL 构建一个出色博客。...技术栈特性 Gatsby React GraphQL 插件主题 MDX/Markdown Bootstrap CSS 模板 如果你曾经想过要开发一个博客,这就是一个很好例子(https://blog.bitsrc.io...Gridsome 与 Gatsby 一样,两者都使用 GraphQL 作为数据层,不一样是 Gridsome 使用了 VueJS。它也是一个很棒静态站点生成器,可以帮你构建出很好博客。

3.1K20

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

在 VuePress ,每个页面都被视为一个 markdown 文件,它们被渲染为 HTML 页面,并在加载页面时充当一个单页应用程序。...与 React Gatsby 相似,Gridsome 是一个数据驱动框架。Gridsome 使用一个 GraphQL 层从各种源获取内容,然后从中动态生成页面。...提供开箱即用代码拆分、资产优化渐进式图像,以提高性能。 PWA 准备就绪。 SEO 友好。 定义良好结构自动化路由。 丰富插件。 缺点 需要具备 GraphQL 基础知识。...与 Gatsby Gridsome 类似,Saber 允许你使用你想用数据来创建静态网站。你可以从不同文件系统中提取数据。有了 Saber,你就不用操心 GraphQL 了。...GitHub 统计数据 但我们应该注意是,这些框架每一个都有自己独特功能。例如,Saber 计划扩展对 React 支持,因此有可能成为全球热门产品。

4.8K10
领券