Astro 6 终于推出!
bash
npmx @astrojs/upgrade
就在昨天晚上,Astro 6.0 正式发布了。带来了新的特性,也引入了一些破坏性变更以及若干新的实验性选项。
主要亮点(概览)
详情可以查看Astro 6.0官方博客,我这里简单说几点
vite7
Astro 6 默认使用 Vite 7 ,带来更一致的 dev / release 体验,测试生产一致性 得到了保证,这下终于不用为神秘**bug**而反复构建了。
有人可能会疑惑,那 vite 8 支持呢?毕竟 vite 8 要呼之欲出了,我也有这个疑惑,所以很久之前我就在 Discord 上问过,看来即使 vite 8 正式推出,astro 6 也很难启用 vite 8

具体链接在这:关于 astro 6 与 vite 8
注意 ⚠️,这并非承诺 ,只是推测,当 vite 8 正式推出时,官方也有可能有实验性更新。
实验性 Rust 编译器
Astro 6 引入了 Rust 编译器,为 Astro 的组件和模板提供了更高效的编译性能,但处于实验状态,缺少很多特性,无法自动纠正 HTML 结构。
diff
import { defineConfig } from "astro/config";
export default defineConfig({
experimental: {
+ rustCompiler: true
}
});
我认为对于博客模板来说,可以试试,比较大部分结构已经由模板固定,唯一不确定的是 Markdown 中混乱的 HTML 结构,不过应该没人那么写吧?
实验性的队列渲染
当启用队列渲染 时,Astro 遍历树中的所有节点,并输出一个深度优先的节点列表。然后对该列表进行迭代和渲染,无需递归算法。这种渲染方式更省内存,并且在大型项目中应能带来更多优势,还有两个配置:节点池化 和 内容缓存,详情可以查看官方文档
diff
import { defineConfig } from "astro/config";
export default defineConfig({
experimental: {
+ queuedRendering: {
+ enabled: true
+ }
}
});
构建速度加快
显而易见,构建速度变得更快了,启用实验特性+缓存,对我这个百十来篇文章的博客,在本机构建,最快时间缩小到 11s 左右。
Astro生态越来越好,希望大家都来尝试一下Astro!
Astro 6 推出啦
作者:xingwangzhe
本文链接: xingwangzhe.fun/posts/astro...
本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。