下一个 Gatsby 项目中的 SVG
已发表: 2023-01-03如果您希望在下一个使用 Gatsby 的 Web 项目中使用可缩放矢量图形(SVG),那么您走运了! 在本文中,我们将介绍如何在您的 Gatsby 项目中使用 SVG 文件,无论您是将它们用于插图还是图标。 我们还将介绍如何优化您的 SVG 以提高性能。 到本文结束时,您应该很好地了解如何在 Gatsby 中使用 SVG 以及如何为您的项目优化它们。
如何将图片导入了不起的盖茨比?
要将图片导入Great Gatsby ,您需要先打开 Great Gatsby 文件。 打开文件后,转到“插入”选项卡,然后单击“图片”。 从那里,您将能够选择要插入的图片。
除了新功能、更简单的 API 和更好的性能之外,Gatsby 图像插件还改进了性能。 它旨在与 Gatsby 的原生图像处理功能无缝运行。 优化 JPEG 和 PNG 压缩以生成多个缩略图图像。 此代码针对具有固定宽度/高度的图像和拉伸容器整个宽度的图像进行了优化。 gatsby-image 支持两种类型的响应式图像。 要充分利用第一个场景的屏幕分辨率,您应该调整图像的大小。 名为 fixed 的图像的子对象可用于查询 Gatsby 中的第一种类型。
与第二种类型类似,您将对名为 fluid 的子对象执行类似的查询。 如果容器是流体类型,则容器中的图像会被拉伸以匹配其宽度和高度,从而避免图像与视口不匹配的边缘情况。 当使用艺术指导来实现视觉效果时,多个图像会在不同的断点处显示。 为此,浏览器使用 >picture> 标签,以确保它们只下载特定断点所需的图像。
将图像导入 Gatsby 站点的最佳方式
将图像添加到 Gatsby 站点的最常见方法之一是将文件直接导入模板、页面或组件,或者从静态文件夹导入文件。 默认路径是将文件直接导入到 Gatsby 模板、页面或组件中。 导入资产是一种简单有效的方式,也是我们用的最多的。 在某些情况下,静态文件夹可能是更方便的选择。 Gatsby-image 是一个专门用于处理 GraphQL 查询的 React 组件。 Gatsby 允许您使用本机图像处理功能和高级图像加载技术轻松且完全优化网站的图像加载。 如果您需要快速轻松地将图像导入 Gatsby 站点,这是最快和最简单的方法。
Gatsby 中的插件是什么?
简而言之,插件是扩展 Gatsby 功能的代码片段。 它们可以帮助您做一些事情,例如添加对不同数据源的支持、优化您的站点以提高性能,甚至添加分析等功能。
Gatsby 静态站点生成器是一个基于 React 的网站创建平台。 插件允许创建标准安装中不可用的自定义功能。 在本教程中,我们将学习如何创建可在任何 Gatsby 站点上使用的插件。 为了使 Gatsby 工作,我们必须首先安装 axios,它允许我们在网站上发表评论。 定义一个新的节点类型 CommentServer 也很关键,它用于扩展 Node.js。 之后,我们可以使用 axios 从评论数据库中提取评论,并将它们作为 CommentServer 存储在数据访问层中。 为了获取新节点,我们必须在 gatsby-node.js 中实现 sourceNodes API。
最后,我们必须使用一个名为 createResolvers 的 API 来将评论解析为帖子。 评论将保存在页面 slug 的相应 JSON 文件中。 通过 HTTP 按需请求评论数据允许在无需使用任何查询的情况下返回 GraphQL 评论。 评论 API 文件 gatsbybrowser.js 必须用于在浏览器中显示评论。 当一个页面刚刚被浏览过时,是执行文件获取和组件插入的最佳时机。 我们的目标是通过定义 HTML 元素创建函数、选择其类名并添加内容来创建 HTML 元素。 然后我们必须将公共目录中的评论渲染到一个元素中。
我们将定义一个帮助器,它通过使用页面的路径名作为参考来返回页面的评论。 我们将使用 createEl 帮助程序通过添加注释来完成此操作。 querySelector API 用于从页面生成表单。 如果用户决定提交评论表单,我们会分析 onSubmit 事件以获取有关他们何时可能这样做的线索。 我们可以使用反馈来确定他们创建的评论是否有错误或是否成功提交。 本教程将引导您完成创建Gatsby 插件的步骤,以允许在我们的网站上发表评论。 您可以使用 gatsby-comment-server- 插件在您的博客中显示您的评论。 因为我们的内容是静态的,所以我们必须重启服务器才能列出新的评论。
什么是 Gatsby 插件?
夏普图像处理库提供了丰富的图像处理功能。 其他Gatsby 插件通常以低级助手模式使用此插件。 尽管在某些情况下执行非常专业的图像处理时它可能很有用,但您不应该直接使用它。
Gatsby-plugin-react-svg 不工作
我不确定问题出在哪里,但 gatsby-plugin-react-svg 对我不起作用。 我尝试按照插件的 GitHub 页面上的说明进行操作,但无济于事。 有没有其他人有这个问题?
盖茨比插件图像
Gatsby 插件图像是一个非常流行且有用的插件,可以帮助您优化图像以获得更好的性能。 它可以帮助您自动调整大小、裁剪和压缩图像。
Gatsby Image 插件处理了以各种格式和大小生成图像的最困难的方面。 图像分为两种类型:静态和动态。 在使用组件时使用静态图像将始终产生相同的图像。 构建完成后,将下载任何远程图像并调整其大小。 借助 Gatsby Image,您可以使用 GraphQL 和 GatsbyImage 组件加载和显示图像。 componentStaticImage / 包含您必须配置的静态图像配置元素。 它还允许您更改用于延迟加载的占位符类型,以及网站的大小和布局。
使用 props 传递静态图片,首先要经过一些技术步骤。 必须使用 gatsbyImageData 解析器配置图像。 除了大小和布局选项之外,您还可以更改用于延迟加载的占位符类型以及其他设置。 还提供高级图像处理,以及可供您使用的图像处理。 Gatsby 图像插件参考指南解释了所有配置选项。