03|从Rollup到Vite:如何用Vite构建你的Vue 3项目?
Vite:Vue.js 3 的官方标配
- 深入了解
- 翻译
- 解释
- 总结
Vite vs Rollup: Vue.js 3项目构建工具选择 Vite是Vue.js 3的官方开发工具,旨在提高JavaScript项目的开发效率。相比于Webpack,Vite支持开箱即用,无需繁杂配置,且利用最新的浏览器特性,能在开发模式下快速编译代码,极大提升开发效率。Vite采用esbuild进行代码编译,其打包速度比普通JavaScript实现的构建器快10~100倍。然而在生产模式中,Vite选择了Rollup,因为esbuild在代码分割和CSS处理方面不如Rollup稳定成熟。 文章介绍了如何用Vite和Rollup来搭建Vue.js 3项目,并对比了两者的差异。Vite的配置相对简单,只需几个简单的依赖和配置文件即可进入开发和生产模式,而Rollup则需要更多的配置和插件选择。在开发模式下,Vite通过esbuild和浏览器ESM对项目页面的JavaScript进行按需加载,相比之下,Rollup直接将所有依赖代码打包编译成Bundle文件格式。这导致Vite在开发模式下能快速编译,理论上比Rollup更快。然而,Vite的开发模式也可能面临浏览器请求时间过长的问题,影响开发体验。 尽管Vite在生产模式下通过Rollup进行打包编译,但开发和产线两种不同编译代码结果可能会带来一些风险。因此,使用Vite开发企业级项目需要多验证和测试功能,以降低项目风险。总的来说,Vite在开发效率和配置简易性方面具有优势,但在企业级项目中需要谨慎使用,特别是在处理开发和生产模式下的差异时。 通过本文,读者可以快速了解Vite和Rollup在Vue.js 3项目构建中的差异,以及在选择合适的构建工具时需要考虑的因素。
《Vue 3 企业级项目实战课》,新⼈⾸单¥59
全部留言(8)
- 最新
- 精选
- WGH丶又双叒叕出新工具了---turbopack---采用Rust编写。自称webpack继任者,热更新比vite快10倍,比webpack快700倍。 尤达发文指出其有选择环境、选择数据之嫌。 不知其未来如何。
作者回复: 这个我专门问过vue团队,据推测turbopack正式可用至少还需要2年,2年后我们可以再看看。但其缓存的设计是核心,其他各编译器都用上swc+多线程时候应该差异就不大了
2022-11-26归属地:江苏1 - 都市夜归人文中有一些不严谨的地方,比如npm run build后怎么就可以直接用浏览器访问?
作者回复: 感谢大家发掘错误
2022-11-30归属地:江苏2 - 默默且听风vite的HTML 中 需要加上 type="module" 不然会报错。完全体大概长这样 <script type="module" src="./src/index.js"></script>2023-05-24归属地:北京3
- 风太大太大Vite 开发模式下的 esbuild 的按需打包编译,真的是绝对比 Rollup 的 Bundle 打包方式快吗?如果不是,能否推演一下有哪些可能的打包慢场景? vite核心是利用了esBuild打包(依赖GO) + 基于原生 ESM 按需编译;所以绝大部分场景web场景应该是vite要快于Rollup (毕竟后者是用node打包 + devServer); 但是并不是所有的打包场景都是web,我认为在一些hybird-native 方案中,vite就不能使用,而传统的rollup基于强大的plugin就能处理。 我也不知道我观点对不对,还请作者解密一下回答一下这个问题。2022-11-27归属地:湖北2
- 文件文中有一处细节作者貌似忽略掉了,在配置完项目目录后需要运行 npm init -y 初始化项目后才能进行后期的安装依赖等操作2024-01-28归属地:甘肃
- 默默且听风因为win环境下没有设置NODE_ENV所以在启动的时候会有遇到“无法访问此网站”诸如此类的提示,可以修改一下Rollup中的设置 (process.env.NODE_ENV === 'development' || !process.env.NODE_ENV) ? serve({ port: 6001, contentBase: 'dist' }) : null 我是这样改的2023-05-24归属地:北京
- Samuelvite 能实现webpack模块联邦的功能不?2023-05-14归属地:湖南
- avava跑不起来。。npm run dev后无法访问,windows平台,按理说作者不是windows平台开发的,没遇到NODE_DEV不是内部命令这些坑。。2022-11-28归属地:湖北3