介绍
template-sdk 是面向模板项目的前端 SDK,为模板项目提供标准化的配置管理、字段定义和运行时取值能力。
什么是 template-sdk
template-sdk 是一套面向模板项目的前端开发工具包。它不提供页面组件,而是专注于解决模板项目中的数据配置和取值问题。
通过 template-sdk,模板作者可以:
- 使用 TypeScript 类型安全地定义模板字段结构
- 在页面组件中通过简洁的 API 读取字段值
- 让平台侧可以独立修改运行时内容而不影响配置结构
核心概念
configJson
configJson 是模板项目维护的完整配置对象,包含了模板的元信息和所有字段定义。它是模板作者的"源代码",由模板项目自己维护。
valueMap
valueMap 是 SDK 根据 configJson 生成的运行时快照。它包含了所有字段的当前值,用于模板项目的运行时读取。平台侧可以独立修改 valueMap 来改变页面展示内容。
useTemplateValue
useTemplateValue 是 SDK 提供的组合式函数,用于在 Vue 组件中读取模板字段值。它接受字段路径作为参数,返回响应式的字段值。
import { useTemplateValue } from 'template-sdk'
const title = useTemplateValue('title', '')
为什么需要 template-sdk
在没有 SDK 的情况下,模板项目通常会:
- 手动维护配置数据结构
- 使用不同的方式读取配置值
- 难以实现配置结构和运行时内容的分离
template-sdk 通过统一的配置规范和 API,解决了这些问题:
- 配置规范化:提供清晰的字段定义规范
- API 统一:提供一致的取值方式
- 数据分离:配置结构与运行时内容完全分离
- 类型安全:基于 TypeScript 提供完整的类型推导
与 UI 框架的关系
template-sdk 不提供任何 UI 组件。它专注于数据层的配置和取值。模板项目自己的页面结构、样式和业务组件仍然由模板作者自己实现。
这意味着 template-sdk 可以与任何 UI 框架配合使用,包括 Vue 生态中的 Element Plus、Ant Design Vue、Naive UI 等。
技术栈
- Vue 3:SDK 的运行时基于 Vue 3 Composition API
- TypeScript:完整的类型定义和类型推导
- Vite:提供构建时插件支持