Skip to content

插件概览

@meng-xi/vite-plugin 内置 17 款插件,按功能动词分为 7 组:compress / generate / inject / analyze / copy / guard / proxy。

分组总览

分组数量说明子路径
compress2压缩类plugins/compress
generate5生成类plugins/generate
inject4注入类plugins/inject
analyze2分析类plugins/analyze
copy2拷贝类plugins/copy
guard1守卫类plugins/guard
proxy1代理类plugins/proxy

compress — 压缩类

减少构建产物体积,支持文本压缩与图片优化。

插件功能适用阶段
compressAssetsgzip/brotli 压缩 JS/CSS/HTML 产物生产构建
imageOptimizer图片压缩与格式转换(支持 WebP/AVIF)生产构建
typescript
import { compressAssets, imageOptimizer } from '@meng-xi/vite-plugin/plugins/compress'

generate — 生成类

自动化代码生成,减少样板代码。

插件功能适用阶段
autoImport自动导入 Vue/React 等 API,生成 .d.ts开发 + 构建
generateUni组合入口:一条流水线完成「扫描页面 → pages.json → 路由配置」(等价 generatePages + generateRouter 连用)开发 + 构建
generatePages扫描 Vue 文件自动生成 pages.json 页面配置(分包/tabBar)开发 + 构建
generateRouter根据 pages.json 自动生成路由配置与类型声明开发 + 构建
generateVersion生成版本号(时间戳/语义化/哈希)构建
typescript
import { autoImport, generateUni, generatePages, generateRouter, generateVersion } from '@meng-xi/vite-plugin/plugins/generate'

inject — 注入类

向 HTML、运行时或页面注入内容。

插件功能适用阶段
htmlInject向 HTML 注入 meta/script/style/变量构建
loadingManager注入全局 Loading 动画开发 + 构建
faviconManager自动生成并注入多尺寸 favicon构建
versionUpdateChecker运行时检测新版本并提示刷新生产
typescript
import { htmlInject, loadingManager, faviconManager, versionUpdateChecker } from '@meng-xi/vite-plugin/plugins/inject'

analyze — 分析类

构建过程可视化与监控。

插件功能适用阶段
bundleAnalyzer产物体积分析报告(HTML/JSON)构建
buildProgress终端构建进度条开发 + 构建
typescript
import { bundleAnalyzer, buildProgress } from '@meng-xi/vite-plugin/plugins/analyze'

copy — 拷贝类

构建产物文件管理。

插件功能适用阶段
copyFile复制静态资源到产物目录构建
assetManifest生成资源清单文件构建
typescript
import { copyFile, assetManifest } from '@meng-xi/vite-plugin/plugins/copy'

guard — 守卫类

构建前校验,防止问题代码进入产物。

插件功能适用阶段
envGuard环境变量校验(类型/范围/必填/自定义)构建
typescript
import { envGuard } from '@meng-xi/vite-plugin/plugins/guard'

proxy — 代理类

开发服务器代理管理。

插件功能适用阶段
proxyManager声明式代理配置,支持环境切换与日志开发
typescript
import { proxyManager } from '@meng-xi/vite-plugin/plugins/proxy'

通用配置

所有插件继承自 BasePlugin,共享以下配置:

typescript
interface BasePluginOptions {
  enabled?: boolean          // 是否启用,默认 true
  verbose?: boolean          // 详细日志,默认 true
  errorStrategy?: 'throw' | 'log' | 'ignore'  // 错误处理,默认 'throw'
}

详细说明请参阅 基础概念

下一步

Released under the MIT License.