Astro 3.4:页面局部

作者
Erika
Matthew Phillips

Astro 3.4 已发布,其特色包括支持页面局部、全新的实验性开发覆盖层等功能。

要利用最新功能,请确保您正在运行最新版本的 Astro。您可以通过运行所选包管理器的升级命令来升级到 Astro 3.4

npm install astro@latest
pnpm upgrade astro --latest
yarn upgrade astro --latest

页面局部

现在,页面组件可以被识别为局部页面,它将渲染其 HTML 内容,而无需包含 `` 声明或任何 `` 内容。

局部页面最适合与围绕获取 HTML 片段构建的渲染库(如 htmxStimulus)结合使用。

您可以通过在组件的 frontmatter 中设置 `partial` 选项,将任何页面标记为局部页面。

---
export const partial = true;
---
<li>This is a single list item.</li>

这将产生以下 HTML 输出

<li>This is a single list item.</li>

`.astro` 文件以及任何其他可以导出值的页面文件类型(例如 `.mdx`)都可以标记为局部页面。

在我们的文档中阅读更多关于页面局部的信息,并查看这个使用 Astro 页面局部和 htmx 的TodoMVC 示例

图像组件性能

Astro 现在可以在构建静态网站时*并行*生成优化后的图像,这可以显著加快包含大量图像的网站的构建时间。

此外,Astro 现在将为图像的所有变体重用相同的缓冲区。这应该可以提高具有相同图像多个变体的网站的性能,尤其是在使用远程图像时。

无需进行代码更改即可利用这些改进。

开发覆盖层(实验性)

The dev overlay showing x-ray mode with a client component highlighted. It shows the client directive being used, and the props passed to the component.

3.4 版本中提供了一个新的实验性开发覆盖层,它允许您检查页面隔离区,查看有关性能和可访问性的有用审计,等等。还包括一个开发覆盖层插件 API,允许您向其添加新功能和第三方集成。

此版本专注于插件 API,以便集成作者可以开始测试并提供反馈。目前内置功能有限,但在即将发布的版本中请留意更多扩展功能!

您可以通过在 Astro 配置中添加以下标志来启用对开发覆盖层及其 API 的访问

astro.config.mjs
export default {
experimental: {
devOverlay: true
}
};

阅读开发覆盖层插件 API 文档,了解如何构建您自己的插件以与 Astro 的开发覆盖层集成。

错误修复

此版本还包括其他错误修复。查看发行说明了解更多信息。