首页
/ Astro 5.7.0 发布:会话管理稳定化与字体API实验性支持

Astro 5.7.0 发布:会话管理稳定化与字体API实验性支持

2025-05-31 07:55:45作者:明树来

Astro 是一个现代化的静态站点生成器,它允许开发者使用组件化的方式来构建高性能的网站。Astro 5.7.0 版本带来了多项重要更新,包括会话管理功能的稳定化、实验性的字体API支持、配置导入的正式化以及SVG组件功能的稳定化。这些更新进一步扩展了Astro的功能边界,为开发者提供了更多便利和灵活性。

会话管理功能正式稳定

在Astro 5.1中引入的实验性会话API现在已正式稳定,可用于生产环境。会话功能主要用于在按需渲染页面时存储用户状态,如认证令牌、购物车内容等需要在请求间持久化的数据。

会话功能需要存储驱动来保存数据。Node和一些主流平台适配器会自动配置默认驱动,而其他适配器则需要开发者手动指定存储驱动。开发者可以在配置中使用session选项来配置存储驱动。

在按需渲染页面、API端点、操作和中间件中都可以访问会话。在页面和组件中,可以通过Astro.session访问会话;在端点、操作和中间件中,则可以通过context.session访问。

如果尝试在没有配置存储驱动的情况下或在预渲染页面中访问会话,会话对象将为undefined,并在控制台中记录错误。

实验性字体API引入

Astro 5.7.0新增了一个实验性的字体API,提供了对字体的原生支持。这个API允许开发者使用来自文件系统和多个内置支持提供商(如Google、Fontsource等)的字体,通过统一的API进行管理。

要启用这个功能,开发者需要在配置中设置experimental.fonts对象,并添加一个或多个字体配置。然后,可以在项目中使用<Font />组件和站点范围的样式来应用这些字体。

这个实验性API还支持开发者构建自定义的AstroFontProvider,以支持更多字体服务。目前这个功能仍处于实验阶段,开发者可以通过参与讨论来帮助塑造其未来发展。

配置导入功能正式化

astro:config虚拟模块现在已正式稳定,不再需要实验性标志。这个模块提供了对配置信息的类型安全访问,分为两个子路径:

  • astro:config/client:暴露给客户端的安全配置信息
  • astro:config/server:暴露给服务器的额外安全信息,如文件和目录路径

开发者可以在项目中的任何文件中导入和使用这些配置值,实现更灵活的配置管理。

SVG组件功能稳定化

SVG导入功能现在也已正式稳定。这个功能允许开发者直接将SVG文件作为组件导入到Astro项目中,并内联到HTML中。开发者可以像使用普通组件一样使用SVG,并传递常见的SVG属性。

这个功能的稳定化意味着开发者现在可以放心地在生产环境中使用SVG组件,而无需担心实验性功能可能带来的兼容性问题。

其他改进

  • 开发工具栏中的审计应用现在会自动在开发模式下剥离data-astro-source-filedata-astro-source-loc属性
  • 修复了在trailingSlash设置为'never'时带基础路径的路由问题
  • 将最小化启动模板重新添加到create astro选项中,为开发者提供了更简洁的起点

Astro 5.7.0的这些更新进一步提升了开发体验和功能完整性,为构建现代化网站提供了更多可能性。无论是会话管理、字体支持还是配置管理,这些新功能都体现了Astro对开发者需求的深入理解和持续创新。

登录后查看全文
热门项目推荐
相关项目推荐

最新内容推荐

项目优选

收起
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
852
505
kernelkernel
deepin linux kernel
C
21
5
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
240
283
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
UAVSUAVS
智能无人机路径规划仿真系统是一个具有操作控制精细、平台整合性强、全方向模型建立与应用自动化特点的软件。它以A、B两国在C区开展无人机战争为背景,该系统的核心功能是通过仿真平台规划无人机航线,并进行验证输出,数据可导入真实无人机,使其按照规定路线精准抵达战场任一位置,支持多人多设备编队联合行动。
JavaScript
78
55
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
7
0
vue-devuivue-devui
基于全新 DevUI Design 设计体系的 Vue3 组件库,面向研发工具的开源前端解决方案。
TypeScript
614
74
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
175
260
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
331
1.07 K