您现在的位置是:亿华云 > 应用开发
Vite 3.0 正式发布,下一代前端工具链!
亿华云2025-10-04 03:22:00【应用开发】1人已围观
简介大家好,我是 CUGGZ。7 月 13 日,Vite 3.0 正式发布,它被称为下一代的前端工具链。Vite 团队决定至少每年发布一个新的 Vite 主要版本,以与 Node.js 的 EOL 保持一
大家好,正式我是发布 CUGGZ。
7 月 13 日,下代Vite 3.0 正式发布,前端它被称为下一代的工具前端工具链。Vite 团队决定至少每年发布一个新的正式 Vite 主要版本,以与 Node.js 的发布 EOL 保持一致,并借此机会定期审查 Vite 的下代 API,为生态系统中的前端项目提供较短的迁移路径。
去年 2 月,工具Vite 2 正式发布。正式从那时起,发布它的下代使用率不断增长,每周 npm 下载量超过 100 万次。前端发布后迅速形成了庞大的工具生态系统。Vite 正在推动 Web 框架的新一轮创新竞赛。Nuxt 3 默认使用 Vite。SvelteKit、Astro、Hydrogen 和 SolidStart 都是用 Vite 构建的。Laravel 现在决定默认使用 Vite。Vite Ruby 展示了 Vite 如何改进 Rails DX。高防服务器Vitest 作为 Jest 的 Vite-native 替代品正在取得长足进步。Storybook 将 Vite 作为官方构建器。而且名单还在继续不断扩大。大多数这些项目的维护者都参与了 Vite 核心的改进,与 Vite团队和其他贡献者密切合作。
全新文档
全新的 v3 文档发布,可以前往 vitejs.dev 查看。Vite 现在使用新的 VitePress 默认主题,其支持黑暗模式。
生态系统中的几个项目的文档也已经迁移到了VitePress( Vitest、vite-plugin-pwa 和 VitePress)。
如果需要访问 Vite 2 的文档,可以前往 v2.vitejs.dev 查看。除此之外,还有一个新的 main.vitejs.dev,每次提交到 Vite 的主分支都会自动部署。这在测试 beta 版本或为核心开发做出贡献时很有用。
文档新增了一个正式的西班牙语翻译,目前官网文档提供了英语、简体中文、日语、西班牙语版本。源码下载
创建 Vite 入门模板
create-vite 模板是一个很好的工具,可以用你最喜欢的框架快速测试 Vite。在 Vite 3 中,所有的模板都有一个与新文档一致的新主题。
在线体验模版:
Vite:https://stackblitz.com/edit/vitejs-vite-qff3vk?file=index.html&terminal=devVite + Vue:https://stackblitz.com/edit/vitejs-vite-4hxjez?file=index.html&terminal=devVite + Svelte:https://stackblitz.com/edit/vitejs-vite-f3pc98?file=index.html&terminal=devVite + React:https://stackblitz.com/edit/vitejs-vite-s1q16q?file=index.html&terminal=devVite + Preact:https://stackblitz.com/edit/vitejs-vite-rndlvv?file=index.html&terminal=devVite + Lite:https://stackblitz.com/edit/vitejs-vite-8zaxwn?file=index.html&terminal=dev该主题现在由所有模板共享。对于更完整的解决方案,包括linting、测试设置和其他功能,有一些基于 Vite 的官方模板,如create-vue 和 create-svelte。Awesome Vite 上有一个社区维护的模板列表。
Awesome Vite:https://github.com/vitejs/awesome-vite#templates。
开发改进
Vite CLIVITE v3.0.0 ready in 320 ms
➜ Local: http://127.0.0.1:5173/
➜ Network: use --host to expose除了 CLI 的美观改进之外,默认的 dev server 的端口现在是 5173,而 preview server 的端口现在是 4173。此更改可确保 Vite 避免与其他工具发生冲突。
改进的 WebSocket 连接策略Vite 2 的痛点之一是云服务器在代理之后运行时配置服务器。Vite 3 更改了默认连接方案,因此在大多数情况下都是开箱即用的。所有这些设置现在都通过 vite-setup-catalogue 作为 Vite 生态系统 CI 的一部分进行测试。
冷启动改进Vite 现在可以避免在冷启动期间,当插件在抓取初始静态导入的模块时注入导入时完全重新加载。
import.meta.glob 支持被重写。下面是 Glob Import Guide 中的新功能:
多个匹配模式可以作为数组传递。import.meta.glob([./dir/*.js, ./another/*.js])现在支持反面匹配模式(以!为前缀)以忽略某些特定文件。import.meta.glob([./dir/*.js, !**/bar.js])可以指定具名导入以改进tree-shaking。import.meta.glob(./dir/*.js, { import: setup })可以使用 query 选项来提供对导入的自定义查询,以供其他插件使用。import.meta.glob(./dir/*.js, { query: { custom: data } })eager 作为 Glob 导入的一个标识传入。import.meta.glob(./dir/*.js, { eager: true })将 WASM import 与未来标准对齐修改了 WebAssembly import API,以避免与未来的标准发生冲突,并使其更加灵活:
import init from ./example.wasm?init
init().then((instance) => {
instance.exports.test()
})构建改进
ESM 成为 SSR 构建的默认格式生态系统中的大多数SSR框架已经在使用ESM构建。因此,Vite 3 使 ESM 成为 SSR 构建的默认格式。这使我们能够简化以前的 SSR 外部化启发式方法,默认情况下外部化依赖项。
改进的 Relative Base 支持Vite 3 现在正确支持 Relative Base(使用base: ),允许将构建的产物部署到不同的 base,而无需重新构建。这在构建时不知道 base 的情况时很有用。
减小构建体积
Vite 关心它的发布和安装足迹;快速安装新应用程序是一项功能。Vite 打包了它的大部分依赖项,并尽可能地尝试使用现代轻量级替代方案。继续这个持续的目标,Vite 3 的发布规模比 v2 小了 30%。
Bug 修复
在过去的三个月里,Vite 的开放 issues 从 770 减少到了 400。而这一下降是在新开放的 PR 处于历史最高水平的情况下实现的。
兼容性说明
Vite 不再支持 Node.js 12,现在需要 Node.js 14.18+。Vite 现在以 ESM 的形式发布。现代浏览器 Baseline 现在支持本地 ES 模块、本地 ESM 动态导入和import.meta 功能的浏览器。Vite 核心升级
在开发 Vite 3 的同时,还改进了合作者对 Vite 核心的贡献体验。
单元和 E2E 测试已迁移到 Vitest,提供更快、更稳定的 DX。VitePress 构建现在作为 CI 的一部分进行测试。Vite 升级到 pnpm 7,跟随生态系统的其余部分。Playgrounds 已从 packages 目录移到/playgrounds。packages 和 playgrounds 现在是"type": "module"。插件现在使用 unbuild 进行构建,并且plugin-vue-jsx 和plugin-legacy 已移至 TypeScript。生态系统已为v3做好准备
Vite 团队与生态系统中的项目密切合作,以确保由 Vite 支持的框架为 Vite 3 做好准备。vite-ecosystem-ci 允许我们针对 Vite 的主分支运行生态系统中领先参与者的 CI,并在引入回归之前及时收到报告。v3 版本很快就会与大多数使用 Vite 的项目兼容。
下一步
Vite 团队将在接下来的几个月内确保所有基于 Vite 构建的项目都能顺利过渡。
Rollup 团队正在开发下一个主要版本,并将在接下来的几个月内发布。一旦 Rollup 插件生态系统有时间更新,Vite 团队将跟进一个新的主要版本。这将是另一个在今年引入更重大变化的机会,可以利用这些变化来稳定此版本中引入的一些实验性功能。
很赞哦!(52)
相关文章
- 主流搜索引擎显示的相关搜索项越多,越能积极反映该域名的市场价值。同时,被评估域名的搜索引擎显示结果不佳可能是由于以下两个原因:
- MySQL数据库升级那些事
- 手把手教你用Python批量实现在Excel后里面新加一列,并且内容为Excel表名
- 详解Numpy中的数组
- 用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
- PolarDB-X 2.0:使用一个透明的分布式数据库是一种什么体验
- SQL Server什么时候启用“锁定内存页”选项 (Windows)
- 域名和网址有什么区别?
- 4、待所有域名查询结束后可在右侧点击导出结果,即可以excel的文件方式将查询到的结果导出。
- 一款不错的SpringCloud 脚手架项目
热门文章
站长推荐
第六:这个圈子里的域名确实是赚钱的一些大玩家,至于小米农,有多少赚钱?几乎没有,也就是说,轿子里只有一个人,而且大多数人都抬着轿子。
网上怎么申请域名?
.cool域名有什么特点?
面对 Log4j 漏洞,开发者如何保护程序安全?
用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
个人如何买卖域名?
中国移动公布新专利旨在提升VR设备内容服务能力
基于代码实操SpringBoot、Redis、LUA秒杀系统