阅读之前
你应该:
- 熟悉模型的增删改查相关内容。【界面设计器】模型增删改查基础
- 了解联动关系的相关内容。【界面设计器】左树右表
名词解释
- 字段组件:为字段提供交互能力的组件,一个字段对应一个组件。
- 关联关系字段:在模型中与其他模型建立关联关系的字段。
- 可选项:选择组件使用的具体选项,可以是静态的,也可以是动态的。
- 选中:用户在使用选择组件时,针对某一选项标记或提取这一选项。
概述
本章内容主要是对【界面设计器】左树右表内容中提及的字段
相关内容的补充,并非完整教程,有不清楚的地方可以交替阅读进行理解。
场景
沿用【界面设计器】左树右表中的两个场景。
我们可以做出这些优化:
将【商品类目】的【上级类目】组件改为【级联】组件。其第1级为【商品类目】,使用自关联依次展开。
将【部门】的【上级部门】组件改为【树下拉】组件。其第1级为【公司】,第2级为【部门】,【部门】使用自关联依次展开。
PS:本章不提供任何步骤介绍,请根据场景内容自行探索。
扩展知识
具备选择行为的组件
常用的选择组件可以进行一些基本的划分。
从可选数量来看
- 单选:只能选一个值。
- 多选:可以选择多个值。
从业务类型来看
枚举(Enum)
:通过数据字典
提供可选项。布尔(Boolean)
:可以看作一个特殊的枚举,其可选范围只有是
和否
。一对一(O2O)
和多对一(M2O)
:对一(X2O)
类型仅支持单选,通过关联模型的数据源提供可选项。一对多(O2M)
以及多对多(M2M)
:对多(X2M)
类型仅支持多选,通过关联模型的数据源提供可选项。
从交互形态来看
- 单选框(Radio)
- 多选框(Checkbox)
- 下拉选择(Select)
- 树下拉(TreeSelect)
- 级联(Cascader)
其中,树下拉(TreeSelect)
和级联(Cascader)
组件要求数据源可以构成树结构
,因此通常使用这两个字段组件
的都是关联关系字段
。
下拉选择(Select)
在介绍树下拉/级联
之前,我们有必要先了解一下在关联关系字段
中使用下拉选择(Select)
这一字段组件
的表现情况。
根据关联关系字段对应的关联模型,我们可以获得其组件所需的可选项
,在用户进行选中
后,该组件将获得一个选项值,并且在表单提交、计算公式等被使用。
通常情况下,我们通过queryPage
接口获取分页后的可选项
列表,再通过点击/滚动方式获得其他页的可选项
供用户选择。
树下拉(TreeSelect)/级联(Cascader)
与上述介绍的下拉选择(Select)
不同点在于,其可选项
是通过【联动关系】配置进行获取的,它并不要求直接获取到真正可以被选择的可选项
,而是通过树结构
依次展开的。用户可选择的可选项
一定是与关联关系字段对应的关联模型相同的树节点
。对于无法选择的节点,其主要作用在于将数据进行划分,以便于用户进行选择。
由于树节点具备特殊性,无法直接使用平台的任何一个模型。因此树结构
被定义在UiTreeNode
模型中,该模型是描述树结构的基本模型,其提供了多个接口为树结构的查询提供了基本能力。
通常情况下,在创建
页面,我们通过UiTreeNode
模型的fetchChildren
接口依次获取其子节点。在编辑
页面,我们通过fetchAll
、reverselyQuery
、reverselyQueryWithSize
这三个接口获取回填的数据,根据不同情况进行调用。虽然使用来不同的接口,但最终都会使用当前模型的queryPage
接口获取数据。
Oinone社区 作者:oinone原创文章,如若转载,请注明出处:https://doc.oinone.top/install/64.html
访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验