⽆包构建

2021-05-10  本文已影响0人  欢欣的膜笛

Webpack、Rollup 等都是基于⼀个或多个⼊⼝点模块,通过依赖分析将有依赖关系的模块打包到⼀起,最后形成少数⼏个产物代码包,因此这些⼯具也被称为打包式构建⼯具。
⽆包构建是指这样⼀类构建⽅式:在构建时只需处理模块的编译⽽⽆须打包,把模块间的依赖关系完全交给浏览器来处理。浏览器会加载⼊⼝模块,分析依赖后,再通过⽹络请求加载被依赖的模块。通过这样的⽅式简化构建时的处理过程,提升构建效率。这种通过浏览器原⽣的模块进⾏解析的⽅式⼜称为 Native-ESM(Native ES Module)。

Vite

Vite 是 Vue 框架的作者尤⾬溪最新推出的基于 Native-ESM 的 Web 构建⼯具。它在开发环境下基于 Native-ESM 处理构建过程,只编译不打包,在⽣产环境下则基于 Rollup 打包。

Snowpack

Snowpack 在⽣产环境下默认使⽤⽆包构建⽽⾮打包模式(可以通过引⼊打包插件例如 @snowpack/plugin-webpack 来实现打包模式),⽽ Vite 仅在开发模式下使⽤。

与 Vite 的差异点

⽆包构建的优点

⽆包构建的最⼤优势在于构建速度快,尤其是启动服务的初次构建速度要⽐⽬前主流的打包构建⼯具要快很多,原因如下:

⽆包构建的缺点

上一篇 下一篇

猜你喜欢

热点阅读