Astro 6 推出啦

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 编译器

Experimental Rust compiler

Astro 6 引入了 Rust 编译器,为 Astro 的组件和模板提供了更高效的编译性能,但处于实验状态,缺少很多特性,无法自动纠正 HTML 结构。

diff 复制代码
import { defineConfig } from "astro/config";

export default defineConfig({
  experimental: {
+    rustCompiler: true
  }
});

我认为对于博客模板来说,可以试试,比较大部分结构已经由模板固定,唯一不确定的是 Markdown 中混乱的 HTML 结构,不过应该没人那么写吧?

实验性的队列渲染

Experimental queued rendering

当启用队列渲染 时,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 国际许可协议进行许可。

相关推荐
小徐_233337 分钟前
Wot UI 2.2.0 发布:Button 新增 subtle,VideoPreview 预览体验继续增强
前端·微信小程序·uni-app
天蓝色的鱼鱼3 小时前
关于 CSS 你可能不知道的属性,但关键时刻很有用
前端·css
泯泷4 小时前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
妙码生花4 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十五):优化细节、网络请求封装
前端·后端·ai编程
泯泷4 小时前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
团团崽_七分甜4 小时前
Spring Boot 核心知识点总结
前端
lichenyang4534 小时前
从一个按钮开始,理解 ASCF 框架到底在做什么
前端
古夕4 小时前
第三方 SSO 接入实践:redirect_uri 编码、回调一致性与跨项目联调
前端·vue.js
朦胧之4 小时前
页面白屏卡住排查方法
前端·javascript