Vite 本身有一个官方插件vite-plugin-swc,可以非常方便地使用swc替代原来的 TypeScript 编译器(tsc)或 Babel。 # 安装插件 然后在vite.config.ts中进行配置: import { defineConfig } from 'vite'; 通过esbuild的配置中引入swc Vite 默认使用esbuild来处理大部分的 TypeScript 转换,但你可以通过配置vite.config....
最近,Vite 团队核心成员“翠”在社交平台表示,他在 Windows 机器上对 Vite 4.3 进行了基准测试,其初始加载速度有了大幅提升!其中,Vite 4.3 的冷启动时间快了 3 倍,热启动时间也快了 1.3 倍。另外,在使用 SWC 插件时,Vite 4.3 的冷启动时间比 turbopack 快 1.5 秒。在开始之前,先来介绍三个...
@vitejs/plugin-react 是一个使用 esbuild 和 Babel 的插件,能够以占用空间小的软件包和灵活使用 babel transform pipeline 实现快速的 HMR @vitejs/plugin-react-swc (新)@vitejs/plugin-react-swc 是一个新的插件,在构建过程中使用 esbuild,但在开发过程中用 SWC 取代 Babel。对于不需要非标准 React 扩展...
Vite 4.3.0-beta.2 + plugin-react 4.0.0-beta.0 / plugin-react-swc main 对比结果如下图所示: 根据图表可知: plugin-react 的启动时间:提升了 3.5 倍(冷)/ 1.3 倍(热) plugin-react-swc 的启动时间:提升了 4.4 倍(冷)/ 1.6 倍(热) 对Vite 4.3 beta.2 和 Vite 4.2.1 的热更新时间进行对比测...
SWC 现在是 Babel 的成熟替代方案,特别是在 React 项目下。SWC 的 React 快速刷新实现比 Babel 快很多,对于一些项目来说,它现在是一个更好的选择。从 Vite 4 开始,有两个插件可用于 React 项目,它们有不同的权衡。我们认为目前这两种方法都值得支持,未来我们会继续探索对这两个插件的改进。
使用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.1 于 2023 年 2 月发布,该版本主要是将 Rollup 和 esbuild 的版本进行同步。值得注意的是 React 插件的升级:Plugin-react 插件修复了很多热更新(HMR)方面的问题,并且采用 SWC 的版本增加了对 SWC 插件的支持。 Vite 4.2 Vite 4.2 于 2023 年 3 月发布,该版本的主要改进是提升了 source map 的调试...
parse:使用Rollup的内部基于SWC的解析器将代码解析为 AST resolve:将相对路径解析为绝对路径,从而正确地处理模块之间的引用 load:加载并解析与给定 ID 对应的模块,并在提供的情况下附加附加的元信息到模块 更多内容可以查看rollup文档 rollup插件 rollup构建流程主要分为两大类:build和output,build 阶段主要负责创建模块...
Vite core 并不依赖 Babel,因此使用 SWC 而不是 Babel 来处理 React 转换不需要在 Vite 中进行任何更改,只需将默认的 React 插件替换为 vite-plugin-swc-react-refresh。切换后可以看到,Vite 在根组件中有显着提升,赶上了 Next: 有趣的是,这里的增长曲线显示 Next/turbo 在根组件比叶子组件中慢 4 倍,而 ...
Vite core 不依赖 Babel。只需要用vite-plugin-swc-react-refresh[4] 来替换默认的 React 插件即可。切换后,我们看到了根案例中 Vite 的显著改进,超过了 Next: 有趣的是,这里的成长曲线显示,Next/turbo 在根情况下比叶情况下慢 4 倍,而 Vite 只慢 2.4 倍。这意味着 Vite HMR 在更大型的组件中表现更好。