当前位置:首页 > 科技  > 软件

Astro 4.0 正式发布,爆火的现代化前端框架

来源: 责编: 时间:2023-12-08 09:15:35 375观看
导读12 月 5 日,现代化前端框架 Astro 4.0 版本正式发布!该版本提供了全新的 API、更快的构建速度、重新设计的文档,以及为 Astro 提供了独特的新开发工具,以新颖有趣的方式增强本地开发环境!Astro 是一个现代化的静态站点生成

B8U28资讯网——每日最新资讯28at.com

12 月 5 日,现代化前端框架 Astro 4.0 版本正式发布!该版本提供了全新的 API、更快的构建速度、重新设计的文档,以及为 Astro 提供了独特的新开发工具,以新颖有趣的方式增强本地开发环境!B8U28资讯网——每日最新资讯28at.com

Astro 是一个现代化的静态站点生成器和前端框架,它具有独特的设计理念:岛屿架构。它允许开发人员使用组件化的方式构建内容优先的网站,将各种技术栈(如 React、Vue、Svelte 等)的组件无缝集成到同一个项目中。2022 年,Astro 在 JavaScript 明星项目中排名第七,一年新增了 15k Star,目前已获得了 37.4k Star!B8U28资讯网——每日最新资讯28at.com


B8U28资讯网——每日最新资讯28at.com

了解更多:Astro,这个前端框架有点不一样!B8U28资讯网——每日最新资讯28at.com

B8U28资讯网——每日最新资讯28at.com

Astro 4.0 的更新亮点包括:B8U28资讯网——每日最新资讯28at.com

  • Astro 开发工具栏
  • 国际化(i18n)路由
  • 增量内容缓存(实验性功能)
  • 全新的视图过渡 API
  • 重新设计的日志记录
  • 重新设计的文档

可以直接访问astro.new在浏览器中尝试 Astro 4.0,或者在终端中运行以下命令来创建新项目:B8U28资讯网——每日最新资讯28at.com

npm create astro@latest

Astro 开发工具栏

Astro 4.0 引入了开发工具栏,它可以增强和定制在本地浏览器中使用 Astro 的开发体验。可以检查页面、捕捉棘手的无障碍问题,并使用自定义应用和第三方工具来扩展工具栏功能。B8U28资讯网——每日最新资讯28at.com

B8U28资讯网——每日最新资讯28at.com

Astro 开发工具栏仅在开发过程中出现在浏览器中,不会出现在最终的生产构建中。该工具栏默认隐藏在页面底部,直到需要它时才会显示出来。将鼠标悬停在附近,工具栏将弹出并提供以下几个不同的应用:B8U28资讯网——每日最新资讯28at.com

  • Inspect:突出显示页面上的交互式 UI 组件岛屿。该工具栏应用旨在利用 Astro 独特的岛屿架构。通过突出显示页面上的岛屿,可以帮助开发者了解哪些元素是交互式的,哪些是轻量级的静态 HTML。然后,可以查看props 并单击以直接在代码编辑器中打开组件。
  • Audit:运行一系列测试,对页面进行常见无障碍问题的审核。通过此功能,在浏览器中即可立即捕捉到没有alt文本或配置错误的 ARIA 角色属性的图像,无需离开浏览器。
  • Sentry:Astro 与 Sentry 合作设计了此工具栏的初始版本。Sentry 是 Web 应用监控平台的领军者,他们很高兴能合作开发 Astro 的新独立调试工具。
  • Storyblok:Storyblok 是 Astro 官方的 CMS 合作伙伴,并作为其 Astro 集成的一部分,提供了一个工具栏应用。在 Astro 4.0 中,所有 Storyblok 用户都应该看到一个新的应用,可以快速访问 Storyblok + Astro 的文档、教程和社区资源,未来还将推出更多 CMS 功能。
  • 第三方应用:Astro 开发人员和第三方集成作者可以使用新的 Dev Toolbar API 来构建自己的嵌入式 JavaScript 应用以进行开发。这解锁了一种全新的原始方法来构建开发工具,使功能如下:
  • 直接在浏览器中显示测试和 Linting 错误。
  • 使用localtunnel将开发环境公开到公共互联网。
  • 轻松访问外部工具,例如Squoosh图像优化器。
  • 内部团队管理面板,以自动化常见任务,例如在开发过程中切换用户帐户。

在接下来的几个月中,Astro 团队将继续通过引入新功能和第三方 API 来提高工具栏的性能。如果想在项目中禁用应用工具栏,可以更新配置文件,并运行astro preferences disable devToolbar --global 以在机器上全局禁用工具栏并适用于所有项目。B8U28资讯网——每日最新资讯28at.com

国际化(i18n)路由

作为 Web 开发人员,处理国际化通常意味着为代码库增加了许多额外的复杂性:路由、重定向、翻译、相对链接处理等。B8U28资讯网——每日最新资讯28at.com

Astro 4.0 引入了新的国际化路由,帮助开发者以更少的复杂性构建全球可访问的网站。利用新的 Astro 功能,如自动 i18n 路由和低级别辅助函数,处理 URL。B8U28资讯网——每日最新资讯28at.com

Astro 新内置的路由支持通过中央配置定义区域设置:B8U28资讯网——每日最新资讯28at.com

import { defineConfig } from "astro/config"export default defineConfig({  i18n: {    defaultLocale: "en",    locales: ["en", "es", "pt-br"]  }})

可以通过以下方式定制国际化路由的行为:B8U28资讯网——每日最新资讯28at.com

  • 回退策略:当特定语言环境下的内容不可用时,可以设置回退策略,以便在其他语言版本中提供相应的内容。
  • 前缀行为:可以添加语言环境名称到 URL 中作为前缀,以区分不同语言版本的页面。
  • 别名支持:可以为常见的语言环境和语言代码设置别名,使其更易于识别和访问。

对于使用服务端渲染(SSR)的 'server' 构建,Astro 能够自动检测用户的首选语言,这样就可以进一步定制内容、添加重定向或者进一步定制路由处理。B8U28资讯网——每日最新资讯28at.com

国际化路由支持最初是作为实验性功能添加到 Astro 3.5 中的,如今,在 Astro 4.0 中已经成为稳定功能。B8U28资讯网——每日最新资讯28at.com

增量内容缓存(实验性功能)

Astro 4.0 引入了增量内容缓存作为实验性新功能,可显著加快大型网站的构建性能。B8U28资讯网——每日最新资讯28at.com

随着时间的推移,代码库不断增长,构建网站的时间会越来越长。静态网站由于在每次构建时重新生成相同的页面,这个问题更加严重。在 Astro 4.0 中,引入了缓存来帮助减少在astro build命令中进行的重复和不必要的工作量。B8U28资讯网——每日最新资讯28at.com

在 Astro 官方文档项目上启用内容缓存后,astro build中相关步骤的时间从 133.20 秒降低到 10.46 秒,速度提高了约 92%。整个构建时间从 4 分钟 58 秒减少到略超过 60 秒,总体构建时间减少了 80%。在其他真实场景中也看到了类似的结果报告。B8U28资讯网——每日最新资讯28at.com

B8U28资讯网——每日最新资讯28at.com

增量内容缓存与Content Collections API 相关联。由于 Astro 拥有访问和管理集合内内容的 API,因此构建可以使用内部构建清单安全地跟踪集合内的更改。Astro 可以在每次构建时检查缓存,并重复使用未更改的内容项。B8U28资讯网——每日最新资讯28at.com

实验性支持增量内容缓存最初是在 Astro 3.5 中以“Content Collections Build Cache”为名称引入的。随着继续完善缓存行为,此功能在 4.0 中仍然是实验性的。如果想进行实验,可以在项目配置中启用experimental.contentCollectionCache,以获得更快的构建速度。B8U28资讯网——每日最新资讯28at.com

全新的视图过渡 API

Astro 3.0 推出了 View Transitions,以使用仅有服务端渲染的 HTML 和最少量的客户端 JavaScript 构建交互式应用体验。通过 Astro 中的 View Transitions,可以执行以下操作:B8U28资讯网——每日最新资讯28at.com

  • 在不加载庞大的单页应用的情况下,对不同页面之间的导航进行动画处理。
  • 在页面之间保持有状态的 UI,例如视频播放器和地图。
  • 自动在不同页面之间变换共同元素。
  • 使用滑动和淡入淡出效果赋予页面更多个性。

自首次发布以来,Astro 不断地改进支持,并在 Astro 4.0 版本中进一步完善了 View Transitions API 和用例:B8U28资讯网——每日最新资讯28at.com

  • 表单:View Transitions 现在可以与静态 HTML 表单和动态客户端表单组件进行交互,触发表单提交时的过渡效果,而不是链接导航。
  • 预取:现在可以指定链接在悬停、点击或页面上可见时应预取,还可以在单个链接上启用/禁用预取。
  • 提供navigate()低级 JavaScript API,可以用于手动触发导航。
  • 完整的生命周期事件系统,可插入以自定义加载过程,甚至可以使用此功能将内置元素交换算法替换为自己的算法。

重新设计的日志记录

Astro CLI 的日志记录体验改进主要包括以下内容:B8U28资讯网——每日最新资讯28at.com

  • 移除不必要的日志记录:以前,某些常见情况会导致重复记录和其他不必要的日志,现在这些不必要的日志已经被移除了。
  • 更简洁的错误信息:现在,错误信息在终端中占用的行数更少,这意味着当出现问题时,在较小的终端上滚动的次数更少。
  • 优化的堆栈跟踪:默认情况下,错误不再包含无用的 Vite 运行时内部信息,从而提供了更清晰和精简的堆栈跟踪。

这些改进使得 Astro 4.0 版本中的dev和build命令更易于阅读、解析和调试。B8U28资讯网——每日最新资讯28at.com

重新设计的文档

Starlight 是 Astro 官方文档模板,包括了在过去两年中构建和管理大规模 Astro 文档站点所收集的所有最佳实践和模式。B8U28资讯网——每日最新资讯28at.com

现在,docs.astro.build 由 Starlight 驱动。B8U28资讯网——每日最新资讯28at.com

B8U28资讯网——每日最新资讯28at.com

由于 Astro 文档的贡献,Starlight 现在具有了 Expressive Code 和新的 Algolia 插件等功能。还将推出新的组件,例如交互式文件树。B8U28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-39529-0.htmlAstro 4.0 正式发布,爆火的现代化前端框架

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 一文讲解TypeScript中的null和undefined的区别

下一篇: 我常用的几个经典Python模块

标签:
  • 热门焦点
  • 小米降噪蓝牙耳机Necklace分享:听一首歌 读懂一个故事

    在今天下午的小米Civi 2新品发布会上,小米还带来了一款新的降噪蓝牙耳机Necklace,我们也在发布结束的第一时间给大家带来这款耳机的简单分享。现在大家能见到最多的蓝牙耳机
  • 三言两语说透设计模式的艺术-简单工厂模式

    一、写在前面工厂模式是最常见的一种创建型设计模式,通常说的工厂模式指的是工厂方法模式,是使用频率最高的工厂模式。简单工厂模式又称为静态工厂方法模式,不属于GoF 23种设计
  • 摸鱼心法第一章——和配置文件说拜拜

    为了能摸鱼我们团队做了容器化,但是带来的问题是服务配置文件很麻烦,然后大家在群里进行了“亲切友好”的沟通图片图片图片图片对比就对比,简单对比下独立配置中心和k8s作为配
  • 学习JavaScript的10个理由...

    作者 | Simplilearn编译 | 王瑞平当你决心学习一门语言的时候,很难选择到底应该学习哪一门,常用的语言有Python、Java、JavaScript、C/CPP、PHP、Swift、C#、Ruby、Objective-
  • 如何通过Python线程池实现异步编程?

    线程池的概念和基本原理线程池是一种并发处理机制,它可以在程序启动时创建一组线程,并将它们置于等待任务的状态。当任务到达时,线程池中的某个线程会被唤醒并执行任务,执行完任
  • 一文搞定Java NIO,以及各种奇葩流

    大家好,我是哪吒。很多朋友问我,如何才能学好IO流,对各种流的概念,云里雾里的,不求甚解。用到的时候,现百度,功能虽然实现了,但是为什么用这个?不知道。更别说效率问题了~下次再遇到,
  • 信通院:小米、华为等11家应用商店基本完成APP签名及验签工作

    中国信通院表示,目前,小米、华为、OPPO、vivo、360手机助手、百度手机助手、应用宝、豌豆荚和努比亚等9家应用商店,以及抖音和快手2家新型应用分发平
  • 华为和江淮汽车合作开发百万元问界MPV?双方回应来了

    8月1日消息,郭明錤今天在社交平台发文称,华为正在和江淮汽车合作,开发售价在100万元的问界MPV,预计在2024年第2季度量产,销量目标为上市首年交付5万辆。
  • 2022爆款:ROG魔霸6 冰川散热系统持续护航

    喜逢开学季,各大商家开始推出自己的新产品,进行打折促销活动。对于忠实的端游爱好者来说,能够拥有一款梦寐以求的笔记本电脑是一件十分开心的事。但是现在的
Top