Skip to main content

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 }
})