先上一个 github 地址 https://github.com/unjs/unplugin
前言
前端工具链生态是日新月异,很多人 webpack
都还没玩熟悉呢,新的 vite
都要出到 3.0 了,再说 vite
是基于 rollup
和 esbuild
的吧,这些个工具都各有优劣,都是要学习的东西。但在我看来,这些工具都有一个共同的特点:都是打包工具。打包工具需要做的事情就很简单,接收输入的文件,输出成我们想要的东西,这其中还包含了可以通过不同的插件实现对输入文件的处理,以实现混淆、注入等功能;同时打包工具大多都提供了许多钩子(hook
),贯穿整个打包流程,也方便了我们对打包过程的关注和额外处理。百变不离其宗,webpack
有 loader
和 plugin
,vite
扩展了设计出色的 Rollup
接口,还带了一些 vite
独特的配置项,因此有人就有了写一次代码,适配多个 bundler
的想法,unplugin
就是这样一个存在。
大约 2 分钟