数据结构
文档会对组件库中使用到的数据结构进行说明,以方便理解对于组件用法
数据级联
常见的数据级联都是使用的同结构children树型,例如:
[
{
label: '一级',
value: 1,
children: [
{
label: '二级',
value: 12
}
]
}
]
这种方式的优点:层级关系明确,检索到对应节点时很容易获取下一级的数据 缺点:根据节点值获取节点必须要遍历搜索,数据无法独立分层
特定级联结构:
const lvl1 = [
{ label: '一级一', value: 1 },
{ label: '一级二', value: 2 }
]
const lvl2 = {
1: [
{ label: '二级一', value: 11 },
{ label: '二级二', value: 12 }
],
2: [
{ label: '二级三', value: 21 },
{ label: '二级三', value: 22 }
]
}
const lvl3 = {
11: [
{ label: '三级一', value: 111 },
{ label: '三级一', value: 121 }
]
}
适用场景:独立的组件直接的级联,比如Select组件。 优点:
- 上一级的节点值就能直接确定下一级的数据,无需索引。
- 级联组件无限制,只需要值和下一级组件数据对象的key匹配。故可以实现多组件关联同一组件
- 数据跟随对应组件,可以保持相对独立
缺点:一般情况下数据需要处理成指定格式,要保障级联数据间对应值唯一