@kaikaikai12138/elpis-kaikai
v1.0.0
Published
----js { mode: 'dashboard', //模版类型,不同模板类型对应不一样的模版数据结构 name: '' ,//名称 desc: '' , //描述 icon:'' , //icon homePage: '', //首页(项目配置) //头部菜单 menu: [{ key:'', //菜单唯一描述 name: '', //菜单名称 menuType:'' , //枚举值: group/ module
Readme
##elpis ##一个企业级应用框架,通过全栈实现
model配置
----js { mode: 'dashboard', //模版类型,不同模板类型对应不一样的模版数据结构 name: '' ,//名称 desc: '' , //描述 icon:'' , //icon homePage: '', //首页(项目配置) //头部菜单 menu: [{ key:'', //菜单唯一描述 name: '', //菜单名称 menuType:'' , //枚举值: group/ module
// 当 menuType === group 时,可填
subMenu:[{
//可递归 menuItem
},...],
//当 menuType === module时,可填
moduleType:'', //枚举值: sider/iframe/custom/schema
// 当 menuType === sider 时
siderConfig:{
menu:[{
//可递归 menuItem (除了 moduleType === sider)
},...]
},
// 当 menuType === iframe 时
iframeConfig:{
path: '' //iframe 路径
},
// 当 menuType === custom 时
customConfig:{
path: '' //custom 路径
},
// 当 menuType === schema 时
schemaConfig:{
api:'', //数据源API (遵循 RESTFUL 规范)
schema:{ //板块数据结构
type: 'object',
properties:{
key:{
...schema, //标准 schema 配置
type:'' , //字段类型
label:'', //字段的中文名
//字段在 table 中的相关配置
tableOption:{
...elTableColumnConfig, //标准 el-table-column 配置
toFixed:0, //保留几位小数
visible:true //默认为 true (false或者不配置时,表示不在表单重显示)
},
//字段在 schema-bar中的相关配置
searchOption:{
...eleComponentConfig. //标准 el-component-column 配置
comType:'' , //配置组件类型 input/select...
dafault:'', //默认值
// 当 comType === 'select'时
enumList :[] //下拉框可选项
},
// 字段在不同动态 component 中的相关配置,前缀对应 componentComfig 中的键值
//如:componentConfig.createForm,这里对应 createFormOption
// 字段在 createForm 中相关配置
createFormOption:{
...eleComponentConfig. //标准 el-component 配置
comType:'' , //控件类型 input/select/input-number
visible:true, //是否展示 (true/false),默认为true
disabled:false, //是否禁用(true/false),默认为false
default:'' ,// 默认值
// comType === 'select' 时生效
comType:[] //枚举值
},
editFormOption:{
...eleComponentConfig. //标准 el-component 配置
comType:'' , //控件类型 input/select/input-number
visible:true, //是否展示 (true/false),默认为true
disabled:false, //是否禁用(true/false),默认为false
default:'' ,// 默认值
// comType === 'select' 时生效
comType:[] //枚举值
},
detailPanelOption:{
...eleComponentConfig //标准 el-component 配置
}
},
...
},
required:[], // 标记哪些字段是必填项
},
//tabel 相关配置
tableConfig:{
headerButtons:[{
lable:'', //按钮中文名
eventKey:'', //按钮事件名
//按钮事件的具体配置
eventOption:{
// 当 eventKey === 'showComponent'
comName:'', // 组件名称
},
...elButtonConfig //标准 el-button 配置
},...],
rowButtons:[{
headerButtons:[{
lable:'', //按钮中文名
eventKey:'', //按钮事件名
eventOption:{
// 当 eventKey === 'showComponent'
comName:'', // 组件名称
//当 eventKey === 'remove'
params:{
//params = 参数的键值
//rowValueKey = 参数值 (当格式为schema ::tableKey 的时候,搭配table中找相应的字段)
paramKey:rowValueKey
}
}, //按钮事件的具体配置
...elButtonConfig //标准 el-button 配置
},...]
},
//search-bar 相关配置
searchConfig:{},
// 动态模块组件
componentConfig:{
// create-form 表单相关配置
createForm :{
title:'' , // 表单标题
saveBtnText:'' //保存按钮文案
},
// edit-form 表单相关配置
editForm:{
mainKey:'', //表单主键, 用于唯一标识要修改的数据对象
title:'', //表单标题
saveBtnText:'' //保存按钮文案
},
//detail-pannel 相关配置
detailPanel:{
mainKey:'', //表单主键, 用于唯一标识要修改的数据对象
title:'', //表单标题
}
// ...支持用户动态扩展
},
}},...] }
服务端启动
---js cosnt { serverStart } =require('@kaikaikai12138/elpis-kaikai') //启动elpis 服务 const app =serverStart({})
自定义服务端
-router-schema -router -controller -service -extend -config
前端构建
---js const {frontendBuild} = require('@kaikaikai12138/elpis-kaikai')
//编译构建前端工程 frontendBuild(process.env._ENV)
自定义页面扩展
-在 app/pages/ 目录下写入口 entry.xxx.js
dashboar/custom-view 自定义页面扩展
-在 app/pages/dashboard/xxx 下面写
dashboard/schema-view/components 动态组件扩展
-在 app/apges/dashboard/complex-view/schema-view/components 下写组件 -配置到 app/pages/dashboard/complex-view/schema-view/components/component-config.js
schema-form 控件扩展
-在 app/widgets/schema-form/complex-view 下写组件 -配置到 app/widgets/schema-form/form-item-config.js
schema-search-bar 控件扩展
-在 app/widgets/schema-search-bar/complex-view 下写组件 -配置到 app/widgets/schema-search-bar/search-item-config.js
