插件概览
@meng-xi/vite-plugin 内置 17 款插件,按功能动词分为 7 组:compress / generate / inject / analyze / copy / guard / proxy。
分组总览
| 分组 | 数量 | 说明 | 子路径 |
|---|---|---|---|
| compress | 2 | 压缩类 | plugins/compress |
| generate | 5 | 生成类 | plugins/generate |
| inject | 4 | 注入类 | plugins/inject |
| analyze | 2 | 分析类 | plugins/analyze |
| copy | 2 | 拷贝类 | plugins/copy |
| guard | 1 | 守卫类 | plugins/guard |
| proxy | 1 | 代理类 | plugins/proxy |
compress — 压缩类
减少构建产物体积,支持文本压缩与图片优化。
| 插件 | 功能 | 适用阶段 |
|---|---|---|
| compressAssets | gzip/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'
}详细说明请参阅 基础概念。
