templateSdkPlugin
templateSdkPlugin 是 Vite 插件,用于在构建时处理模板配置、生成类型声明文件和构建产物。
导入
import { templateSdkPlugin } from 'template-sdk/vite'
类型签名
function templateSdkPlugin(
options: TemplateSdkPluginOptions
): Plugin
interface TemplateSdkPluginOptions {
configJson: TemplateConfig
}
选项
| 属性 | 说明 | 类型 | 必填 |
|---|---|---|---|
configJson |
模板配置对象 | TemplateConfig |
是 |
插件功能
templateSdkPlugin 在开发和构建阶段自动执行以下任务:
- 配置校验:验证 configJson 是否符合规范
- 类型生成:生成 .template-sdk/**/*.d.ts 类型声明文件
- 产物输出:输出 config.json 和 valueMap.json
使用示例
基本用法
// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import configJson from './src/template/config'
import { templateSdkPlugin } from 'template-sdk/vite'
export default defineConfig({
plugins: [
templateSdkPlugin({ configJson }),
vue()
]
})
完整配置
// vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { defineConfig } from './src/template/config.ts'
import { templateSdkPlugin } from 'template-sdk/vite'
const config = defineConfig({
meta: {
name: '示例模板',
code: 'demo'
},
dataSchema: {
fields: [
{ key: 'title', type: 'string', value: '标题' }
]
}
})
export default defineConfig({
plugins: [
templateSdkPlugin({ configJson: config }),
vue()
]
})
生成的文件
插件会在开发或构建时生成以下文件:
类型声明文件
.template-sdk/
└── template-sdk.d.ts // SDK 类型声明
构建产物
dist/
├── config.json // 模板配置副本
└── assets/
└── template-sdk/
└── valueMap.json // 运行时值映射
错误处理
如果 configJson 校验失败,插件会在终端输出详细的错误信息:
[template-sdk] 配置校验失败
- 路径: dataSchema.fields[0].key
- 错误: key 不能为空