swc是一个非常强大的编译器,可以在大多数场景下替代 Babel 或其他 TypeScript 编译器,并且由于其极高的性能,越来越多的开发工具(包括 Vite)正在将swc作为默认的编译工具。
swc(全称 Super-fast Web Compiler)是一款基于 Rust 编写的 Java 和 Type 编译器,目标是提供比 Babel 更快的编译速度和更好的压缩效果。swc 通过多线程编译和直接解析代码到 AST 的方式,显著提升了编译速度,远超 Babel。 同时,swc 提供了优秀的代码压缩效果,支持最新的 ECMA 标准,包括 ES6、ES7、ES8 等,并兼...
2\.Vite 4.3 (babel): Vite 4.3.0 + plugin-react 4.0.0-beta.1 3\.Vite 4.2 (swc): Vite 4.2.1 + plugin-react-swc 3.2.0 4\.Vite 4.3 (swc): Vite 4.3.0 + plugin-react-swc 3.3.0 早期采用者还上报称,在测试 Vite 4.3 beta 版时,应用程序的实际开发启动速度提高了 1.5 至 2 倍,我们...
另外,在使用 SWC 插件时,Vite 4.3 的冷启动时间比turbopack快 1.5 秒。截至发稿,Vite 4.3 处...
Vite 4.3.0 + plugin-react 4.0.0-beta.0 / plugin-react-swc main 根据上表中的数据得到图表如下所示:启动时间:热更新时间:除此之外,测试前后的 FCP(First Contentful Paint,即首次有内容渲染的时间) 对比如下:Vite 4.2.1 + plugin-react 3.1.0FCP 最大值:70334FCP 最小值:33901FCP 平均值...
除此之外,Vite 还采用了由 Arnaud Barre 最初创建的基于 SWC 的 React 插件,他现在也是 Vite 团队成员! Vite 4.1 Vite 4.1 于 2023 年 2 月发布,该版本主要是将 Rollup 和 esbuild 的版本进行同步。值得注意的是 React 插件的升级:Plugin-react 插件修复了很多热更新(HMR)方面的问题,并且采用 SWC 的版本增...
Vite core 不依赖 Babel。只需要用 vite-plugin-swc-react-refresh[4] 来替换默认的 React 插件即可。切换后,我们看到了根案例中 Vite 的显著改进,超过了 Next: 有趣的是,这里的成长曲线显示,Next/turbo 在根情况下比叶情况下慢 4 倍,而 Vite 只慢 2.4 倍。这意味着 Vite HMR 在更大型的组件中表现更好...
使用SWC 支持的 React 插件 @vitejs/plugin-react-swc[17] 快速刷新(比 Babel 快约 20 倍) 启用自动 JSX 运行时(Babel 在 v7.9.0 版本中引入此特性,相关阅读:Introducing the New JSX Transform[18] 和 A new JSX transform[19] Vite 4.1 (2023.02) ...
Vite 4.0 新版本的动力来自于从 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 4.1 于 2023 年 2 月发布,该版本主要是将 Rollup 和 esbuild 的版本进行同步。值得注意的是 React 插件的升级:Plugin-react 插件修复了很多热更新(HMR)方面的问题,并且采用 SWC 的版本增加了对 SWC 插件的支持。 图片 Vite 4.2 Vite 4.2 于 2023 年 3 月发布,该版本的主要改进是提升了 source map ...