@voidzerochen/elpis
v1.0.0
Published
```json { "mode": "dashboard", "name": "项目名字", "desc": "项目描述", "homePage": "主页路径", // 头部菜单 "menu": [ { "key": "菜单唯一描述", "name": "菜单名称", "menuType": "菜单类型", // 枚举值 group/module // menuType == group 时,submenu 为数组 "submenu
Readme
model 配置
{
"mode": "dashboard",
"name": "项目名字",
"desc": "项目描述",
"homePage": "主页路径",
// 头部菜单
"menu": [
{
"key": "菜单唯一描述",
"name": "菜单名称",
"menuType": "菜单类型", // 枚举值 group/module
// menuType == group 时,submenu 为数组
"submenu": [
{
// 可递归 menuItem
}
// ...
],
// menuType == module 时
"moduleType": "", // 枚举值 side/iframe/custom/schema
// 当 moduleType == side 时,submenu 为数组
"sideConfig": {
"menu": [
// ... 可递归 menuItem (除 moduleType == side)
]
},
// 当 moduleType == iframe 时
"iframeConfig": {
"path": "iframe路径"
},
// 当 moduleType == custom 时
"customConfig": {
"path": "custom路径"
},
// 当 moduleType == schema 时
"schemaConfig": {
"api": "数据源 api (遵循 RESTFUL 规范)",
// 板块数据结构
"schema": {
"type": "Object",
"properties": {
"key": {
// ...schema 标准 schema 配置
"type": "字段类型",
"label": "字段中文名",
// 字段在 table 中的相关配置
"tableOption": {
// ...elTableColumConfig, 标准 el-table-column 配置
"toFixed": 0, // 小数点保留位数
"visible": true // 默认为 true, 表示在 table 中显示
},
// 字段在 search-bar 中的相关配置
"searchOption": {
// ...elComponentConfig, 标准 el-component-column 配置
"comType": "配置组件类型 input/select/...",
"default": "默认值",
// comType === select
"enumList": [], // 下拉框可选
// comType === dynamicSelect
"api": ""
},
// 字段在不同动态 component 中的相关配置,前缀对应 componentConfig 中的键值
// 如:componentConfig.createForm,这里对应 createFormOption
"createFormOption": {
// ...eleComponentConfig, 标准 el-components 配置
"comType": "配置组件类型 input/select/...",
"visible": true, // 默认为 true, 表示在 table 中显示
"disabled": false, // 是否禁用 默认为 false
"default": "默认值",
// comType 为 select 时,可选配置
"enumList": [] // 枚举列表
},
"editFormOption": {
// ...eleComponentConfig, 标准 el-components 配置
"comType": "配置组件类型 input/select/...",
"visible": true, // 默认为 true, 表示在 table 中显示
"disabled": false, // 是否禁用 默认为 false
"default": "默认值",
// comType 为 select 时,可选配置
"enumList": [] // 枚举列表
},
"detailPanelOption": {
// ...eleComponentConfig, 标准 el-components 配置
}
}
// ...
},
"required": [] // 必填字段
},
// table 相关配置
"tableConfig": {
"headerButtons": [
{
"label": "按钮中文名",
"eventKey": "按钮事件名",
// 按钮事件具体配置
"eventOption": {
// 当 eventKey === showComponent
"comName": "组件名"
}
// ...elButtonConfig 标准 el-button 配置
}
// ...
],
"rowButtons": [
{
"label": "按钮中文名",
"eventKey": "按钮事件名",
// 按钮事件具体配置
"eventOption": {
// 当 eventKey === showComponent
"comName": "组件名",
// 当 eventKey === remove
"params": {
// paramKey = 参数的键值
// rowValueKey = 参数值,格式为 schema::tableKey,到 table 中找相应的字段
"paramKey": "rowValueKey"
}
}
// ...elButtonConfig
}
// ...
]
},
// search-bar 相关配置
"searchConfig": {},
// 动态组件配置
"componentConfig": {
"createForm": {
"title": "表单标题",
"saveBtnText": "保存按钮文案"
},
"editForm": {
"mainKey": "表单主键,用于唯一标识要修改的数据对象",
"title": "表单标题",
"saveBtnText": "保存按钮文案"
},
"detailPanelOption": {}
// ...支持用户动态扩展
}
}
}
// ...
]
}
