xadmin
xadmin是平台的核心框架,平台的扩展功能都是使用xadmin来实现的,同时xadmin也实现了一些常用的扩展模块,包含表单和CRUD等模块。
xadmin的设计思想
xadmin的设计思想非常简单。用最简单的办法实现了现在流行的微前端架构,让我们一步步的来看一下xadmin是如何实现。
目的
首先xadmin核心的目的是创造一个可插拔式的 模块
管理框架,模块与模块之间实现数据共享
、逻辑复用
、组件共享
以及 逻辑重写
、组件重写
等等。
模块创建与加载
调用app.use()
方法加载模块,例如:
// 注册一个名称为custom.models的模块
app.use({
name:'custom.models'
})
该方法传入一个对象,对象内包含内置属性
(参考...) 以及可以扩展自定义属性。
如何使用内置属性
// 获取系统内以注册的所有模块
app.get('models')
// 获取系统内注册所有模块的组件
app.get('components')
如何扩展自定义属性,实现模块共享
app.use({
// items内注册自定义属性的类型,该方法定义的类型会直接影响调用app.get的返回结果
items:{
customA:{ type:'map' }
},
// 定义自定义属性
customA:{ a: 1 }
})