介绍

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:提供构建时插件支持