写点什么

Vite 4 发布,用更快的 SWC 替换了 Babel

  • 2023-01-20
    北京
  • 本文字数:1047 字

    阅读完需:约 3 分钟

Vite 4发布,用更快的SWC替换了Babel

Vite 前端构建工具背后的团队最近发布了 Vite 4.0,此时距离 Vite 3.0 发布已有 5 个月。新版本的动力来自于从 Rollup 2.0 到 3.0 的突破性升级。Vite 4.0 还增加了对 SWC 的支持,这是一个基于 Rust 的打包器(bundler),声称比 Babel 有数量级的速度提升。


现在,Vite 4.0 在构建时使用 Rollup 3.0。Rollup 3.0 是在几周前的 ViteConf 2022 上发布的。ViteConf 2022 聚集了 Vite 生态系统的主要参与者。自 Vite 2.0 以来,Vite 是一个与框架无关的构建工具。因此,许多其他的开发者工具、库和框架开始支持 Vite,例如 Storybook、Astro、Nuxt、SvelteKit、Solid Start、Hydrogen、Laravel、Qwik City 以及其他产品。Vite 团队提到:


在生态系统合作伙伴的帮助下,[我们] 很高兴地宣布 Vite 4 发布,它在构建时由 Rollup 3 提供支持。我们会与生态系统协作,确保这个新的主版本的平滑升级。


虽然 Rollup 3 与 Rollup 2 基本兼容,但使用自定义 rollupOptions 的开发者可能会遇到问题,应参考 Rollup 迁移指南来升级他们的配置。


Vite 4.0 还升级了 dotenv 和 dotenv-expand 的版本(参见 dotenv 和 dotenv-expand 的变更日志)。新版本的 dotenv 带来了一些破坏性的变化,要求开发者用引号来包装包含某些字符(如回车键)的名字:


-VITE_APP=ab#cdef+VITE_APP="ab#cdef"
复制代码


最近发布的 Next.JS 13 包括了 Turbopack,这是一个新的、仍在 alpha 阶段的、基于 Rust 的 Webpack 替代方案,声称比 Vite 快几个数量级。对这一说法的研究表明,大部分速度的提高与 Turbopack 使用 SWC 有关,SWC 是一个基于 Rust 的打包器,目前仍处于 alpha 阶段。SWC 声称比 Vite 3.0 中使用的 Babel 快 20 倍。Vite 4.0 现在增加了对 SWC 的支持,这应该有助于缩小这一差距。Vite 团队解释说:


SWC 现在是 Babel 的成熟替代方案,特别是在 React 项目下。SWC 的 React 快速刷新实现比 Babel 快很多,对于一些项目来说,它现在是一个更好的选择。从 Vite 4 开始,有两个插件可用于 React 项目,它们有不同的权衡。我们认为目前这两种方法都值得支持,未来我们会继续探索对这两个插件的改进。


开发者可以参考迁移指南和发布说明,以了解与新版本相关的详尽变化。Vite 是在 MIT 开源许可下发布的。欢迎提交贡献,但必须遵循 Vite 的贡献指南。

原文链接:

https://www.infoq.com/news/2022/12/vite-4-faster-swc/

相关阅读:

认识 VueCLI 和 Vite🔥

前端又开撕了:用 Rust 写的 Turbopack,比 Vite 快 10 倍?

假如面试官问你 Babel 的原理该怎么回答

开发 Babel 插件可以试试这个 CLI 工具

2023-01-20 09:1214757

评论

发布
暂无评论
发现更多内容

安全相关总结

纯纯

ARTS打卡 第16周

引花眠

微服务 ARTS 打卡计划

Spring 5 中文解析测试篇-Spring MVC测试框架

青年IT男

单元测试 Spring5

极客大学-架构师训练营

9527

CString 类的线程不安全问题

C语言与CPP编程

c c++ 编程语言

C语言指针详解

C语言与CPP编程

c c++ 编程语言 指针

洗牌算法

C语言与CPP编程

c c++ 算法 编程语言

CountDownLatch 瞬间炸裂!同基于 AQS,凭什么 CyclicBarrier 可以这么秀?

程序员小航

Java 源码 AQS 源码阅读 CyclicBarrier

为什么互联网巨头们纷纷使用Git而放弃SVN?(内含Git核心命令与原理总结)

冰河

git 冰河 代码管理 代码仓库 分支合并

前端 10 问之 Docker (第一篇)

局外人

Docker

ARTS 打卡 (20.09.07-20.09.13)

小王同学

哦!这该死的 C 语言

苹果看辽宁体育

c 后端

第五周作业

Vincent

极客时间 极客大学

智能商业时代的思考(二)网络协同抓住用户

刘旭东

微信 商业价值 数据智能 网络协同 商业智能

链表中移除重复节点,保罗·格雷厄姆的传奇博客,Mac三指拖动操作,大数据平台 John 易筋 ARTS 打卡 Week 17

John(易筋)

大数据 ARTS 打卡计划 链表移除相同节点 保罗格雷厄姆 mac三指操作设置

你必须要了解的「架构」小历史

小齐本齐

spring Spring Cloud Spring Boot

ARTS Week16

时之虫

ARTS 打卡计划

PB级大规模Elasticsearch集群运维与调优实践

腾讯云大数据

大数据

一文带你了解微服务架构和设计(多图)

Phoenix

架构 分布式 微服务

架构师训练营第十四周总结

张明森

Mysql学习笔记:InnoDB事务和ACID模型

马迪奥

MySQL innodb

数据结构与算法系列之数组

书旅

数据结构 算法 数组 数据结构与算法

Elasticsearch索引容量管理实践

腾讯云大数据

大数据

鹰眼 | 分布式日志系统上云的架构和实践

腾讯云大数据

大数据

第五周总结

Vincent

极客时间 极客大学

ARTS打卡Week 12

teoking

程序的机器级表示-异构的数据结构

引花眠

计算机基础

oeasy教您玩转 linux 010213 中文 fcitx

o

导致系统不可用原因及密码验证

纯纯

03 Spring Security 入门实例

哈库拉玛塔塔

Spring Boot kotlin spring security

简述C语言宏定义的使用

C语言与CPP编程

c c++ 编程语言

Vite 4发布,用更快的SWC替换了Babel_大前端_Bruno Couriol_InfoQ精选文章