低代码共享组件
包含 MenuParentSelect、DictTypeSelect、FieldTypeSelect、FieldValueRenderer、RuntimeRulesEditor。
MenuParentSelect
树形选择器选择系统菜单中的父级菜单。
Props
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
value | String | Number | null | 选中菜单 ID(v-model) |
placeholder | String | '请选择父级菜单' | 占位文本 |
autoLoad | Boolean | true | 挂载时自动加载菜单树 |
disabled | Boolean | false | 禁用 |
Events
| 事件名 | 参数 | 说明 |
|---|---|---|
update:value | id | 值变更 |
loaded | treeData | 菜单树加载完毕 |
- 从
/system/resource/tree获取菜单树 - 仅显示可选节点(目录/菜单类型),渲染类型标签
DictTypeSelect
字典类型选择器,支持创建新字典。
Props
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
value | String | '' | 选中的字典类型(v-model) |
fields | Array | [] | 字段列表(用于提取已有 dictType 引用) |
compact | Boolean | false | 紧凑模式 |
disabled | Boolean | false | 禁用 |
- 加载活动状态字典 + 当前模型已有引用
- 内联创建新字典(含字典项标签/值/类名)
FieldTypeSelect
数据库字段类型选择器。
Props
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
value | String | 'varchar' | 选中字段类型(v-model) |
- 可选类型:varchar、bigint、decimal、datetime 等(来自 model-schema)
FieldValueRenderer
运行时字段值渲染器。支持 dictTag、tag、link、text 四种渲染模式。
Props
| 属性 | 类型 | 说明 |
|---|---|---|
value | * | 原始值 |
row | Object | 行数据 |
field | Object | 字段元数据(dictType、render、componentType) |
setting | Object | 渲染设置 |
context | Object | 运行时上下文 |
Events
| 事件名 | 说明 |
|---|---|
navigate | 渲染模式为 link 时点击触发 |
RuntimeRulesEditor
运行时规则编辑器。定义控制显示/编辑/样式的条件规则。
Props
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
rules | Array | [] | 规则数组(v-model) |
fieldOptions | Array | [] | 可用字段选项 |
title | String | '运行规则' | 标题 |
规则结构
| 组成部分 | 说明 |
|---|---|
| 条件来源 | 记录/行/表单数据/查询参数/路由参数/用户 |
| 操作符 | 等于、不等于、大于、小于、包含、属于、为空、不为空 |
| 效果 | 隐藏、只读、禁用、必填 |
| 视觉覆盖 | 文字颜色、附加 CSS 类名 |
