configJson 结构
了解 configJson 的完整结构,包括所有支持的字段类型和配置选项。
顶层结构
configJson 必须是完整的配置对象:
{
"meta": {},
"dataSchema": {
"fields": []
},
"functions": {}
}
| 属性 | 说明 | 类型 |
|---|---|---|
meta |
模板元信息对象 | object |
dataSchema |
字段定义容器 | object |
functions |
预留配置对象(当前保留) | object |
meta 对象
meta 是模板元信息对象,没有强制字段白名单,常见字段如下:
{
"meta": {
"name": "示例模板",
"code": "demo-template",
"version": "0.1.0"
}
}
| 属性 | 说明 | 类型 | 必填 |
|---|---|---|---|
name |
模板名称 | string |
否 |
code |
模板代码 | string |
否 |
version |
模板版本 | string |
否 |
通用字段对象
所有字段对象至少包含以下结构:
{
"key": "title",
"type": "string",
"label": "标题",
"value": "默认标题"
}
| 属性 | 说明 | 类型 | 必填 |
|---|---|---|---|
key |
字段唯一标识 | string |
是 |
type |
字段类型 | string |
是 |
label |
字段展示名 | string |
否 |
value |
默认值 | unknown |
否 |
通用规则:
- key 必须是非空字符串
- 同一层级内 key 不能重复
- value 不是必填;有 value 时表示默认值
支持的字段类型
当前只支持以下类型:
string
普通文本
number
数字
boolean
布尔值
image
图片路径
video
视频路径
array
字段数组
string 字段
{
"key": "title",
"type": "string",
"label": "标题",
"value": "默认标题"
}
number 字段
{
"key": "count",
"type": "number",
"label": "数量",
"value": 3
}
boolean 字段
{
"key": "enabled",
"type": "boolean",
"label": "是否启用",
"value": true
}
image 字段
{
"key": "poster",
"type": "image",
"label": "海报",
"value": "/assets/template/poster-core.svg"
}
注意:
image 在 configJson 里只接受字符串路径(相对路径或绝对 URL)。
video 字段
{
"key": "trailer",
"type": "video",
"label": "视频",
"value": "https://example.com/video.mp4"
}
注意:
video 在 configJson 里只接受字符串路径(相对路径或绝对 URL)。
array 字段
数组字段用于表示一组有序的字段,数组子项继续使用和普通字段一致的字段对象结构。
{
"key": "timeline",
"type": "array",
"label": "时间轴",
"operations": ["add", "delete"],
"value": [
{
"key": "phase01",
"type": "string",
"label": "阶段一",
"value": "接入边缘传感节点。"
},
{
"key": "phase02",
"type": "string",
"label": "阶段二",
"value": "将采集数据转换为状态向量。"
}
]
}
operations 属性
| 值 | 说明 |
|---|---|
add |
允许添加新项 |
delete |
允许删除已有项 |
operations 默认行为:
- 未填写 operations 时,默认允许 add 和 delete
- operations: [] 表示不允许任何操作