组件注册
提示
此页面文档假设你已经阅读过了 组件快速上手。如果你对组件开发还不太了解,推荐你先阅读它。
组件包
什么是组件包呢?组件包的含义在此框架中是指单个组件或多个组件的组合。也就是说可以一个组件一个组件包,也可以多个组件放一个组件包中,这样做的目的是为了渲染引擎能实现组件的按需渲染,所以建议同类型的组件建议放在同一个组件包中。
组件包名
在脚手架初始化的时候第一步需要给它一个文件夹名字,该文件夹名建议作为组件包名,在上面的脚手架初始化中,组件包的名称是packageName
。
注意
- 组件包名不可重复,因此如果在同一环境下建议先检查包名是否存在,以免出现不必要的错误。
- 组件包的名称请使用字母、数字或下划线进行命名,禁止采用特殊字符命名。
关键用处
对组件包的命名可能你想知道在哪使用它了,以下列出了所有使用到组件包名的地方:
组件
在IDM框架中,组件的意义就是通过用户拖拽到页面上然后对组件的属性进行个性化定制,从而实现一个组件的复用。在上述组件包中也描述到了可以一个组件一个组件包,也可以多个组件一个组件包,所以在IDM中的组件和组件包中的组件都是对应关系,组件包中有几个组件,那就代表在IDM的组件市场也需要同时注册对应的组件包中的组件,这样才能正常使用他们,组件的开发请参考开始开发的步骤。
组件类名
在注册一个组件的时候,不管如何我们都需要给它一个名字。比如在public\static\config.json
文件中注册的时候我们已经看到了:
{
...
"module": [
{
"className": "Test001",
...
}
]
}
在上面的例子中,组件的名称是“Test001”,也就是组件的类名。
注意
- 组件类名在同一个组件包内不可重复。
- 在定义组件时,定义组件类名的方式建议采用PascalCase (首字母大写命名)的方式。
配置文件介绍
在开始开发的第一步时候我们需要在public\static\config.json
文件中注册组件,此文件为当前组件包的所有组件集合,未在此文件中注册的文件可能无法为IDM框架正常使用,文件结构如下:
{
"version": "1.0.0",
"lasttime": "2022-3-7 18:10:21",
"author": "申龙",
"className": "packageName",
"module": [
{
"classId": "idm.componet.packagename.test001",
"comName": "示例001",
"className": "Test001",
"comType": "common",
"comLangue": "vue"
}
]
}
key | 说明 |
---|---|
version | 组件包的版本号,建议n.n.n的格式,请务用特殊符号,每打包一次代码建议修改一下此版本号 |
lasttime | 最后的修改时间 |
author | 组件包的作者 |
className | 组件包名,请参考组件包名 |
module | 组件注册的数组,用于存放所有组件注册的对象 |
classId | 组件的类ID,在同一环境的IDM框架中保持唯一即可 |
comName | 组件的中文名称 |
className(module) | 组件的类名,请参考组件类名 |
comType | 组件的类型,common:通用型组件,dialog:弹窗类型组件,请根据组件用途谨慎选择 |
comLangue | 组件的技术栈,可以为vue、react、angular、jquery以及其他 |