【资讯】2257- Vite 6 正式发布

科技   2024-11-27 07:34   福建  
11 月 26 日,Vite 6.0 正式发布。自一年前 Vite 5 发布以来,Vite 的采用率持续增长,每周 npm 下载量已从 750 万次跃升至 1700 万次。与此同时,Vitest 不仅越来越受到用户的青睐,并开始逐步建立起属于自己的生态系统。

此外,Vite 生态系统也迎来了更多新框架的加入,包括 TanStack Start、One、Ember 等,众多知名企业如 OpenAI、谷歌、苹果、微软、NASA、Shopify、Cloudflare、GitLab、Reddit、Linear 等都在使用 Vite。

Vite 还推出了全新的域名:vite.dev,以及全新的落地页:

Vite 6 是自 Vite 2 以来最重要的主要版本,该版本主要带来了 Environment API(实验性)。Environment API 是 Vite 6 中引入的一个实验性特性,它正式化了环境(Environments)的概念。这个 API 允许用户和框架作者根据生产环境中应用的工作方式,创建所需的多个环境。它在 Vite 5.1 中以 "Vite Runtime API" 的名称首次引入,并在 Vite 6 中以实验性功能发布。

Environment API解决了什么问题?

  • 多环境支持:在 Vite 5 及之前版本中,只有两个隐式环境(客户端和可选的服务端渲染环境)。Environment API 允许创建多个环境,以更好地映射现代应用可能涉及的多个运行环境,如浏览器、Node 服务器和边缘服务器。

  • 开发与构建之间的差距:Environment API 使得在开发和构建期间配置应用以适应所有环境成为可能,从而缩小了开发环境和生产环境之间的差异。

  • 向后兼容性:尽管引入了新的环境概念,Vite 6 仍然保持了与 Vite 5 的向后兼容性,确保了平滑的迁移过程。

Vite 6 其他更新内容:

  • resolve.conditions 默认值变更:Vite 6需要用户手动配置resolve.conditionsssr.resolve.conditions的条件,若之前已自定义,需更新以包含新条件。

  • JSON字符串化变更:Vite 6引入json.stringify'auto'默认值,仅对大JSON文件进行字符串化,且json.namedExports不会被禁用。若需禁用,可设置json.stringify: false

  • HTML资源引用扩展:Vite 6 扩展了对 HTML 元素中资源引用的支持,可通过vite-ignore属性选择退出某些元素的HTML处理。

  • postcss-load-config更新:Vite 6 要求使用tsxjiti加载TypeScript postcss配置文件,使用yaml加载YAML配置文件。

  • Sass 默认使用现代 API:Vite 6 默认使用 Sass 的现代API,若需使用旧API,可设置相关选项,但 Vite 7 将移除对旧API的支持。

  • 库模式下CSS输出文件名:Vite 6 库模式下的CSS输出文件名默认使用package.json中的name,若已设置build.lib.fileName,则也用于CSS文件名。可通过build.lib.cssFileName明确设置不同的CSS文件名。

Vite 6 迁移指南:https://vite.dev/guide/migration.html

整理:前端充电宝

前端自习课
每日清晨,享受一篇前端优秀文章。
 最新文章