数据结构

文档会对组件库中使用到的数据结构进行说明,以方便理解对于组件用法

数据级联

常见的数据级联都是使用的同结构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匹配。故可以实现多组件关联同一组件
  • 数据跟随对应组件,可以保持相对独立

缺点:一般情况下数据需要处理成指定格式,要保障级联数据间对应值唯一

Last Updated:
Contributors: wxhccche