自动行合并功能允许表格组件根据数据内容自动计算并应用行合并,无需手动在数据中添加 _rowSpan 字段。
<VbTable
:columns="columns"
:data="data"
:auto-row-merge="true"
:auto-row-merge-fields="['department']"
/>
<VbTable
:columns="columns"
:data="data"
:auto-row-merge="true"
:auto-row-merge-fields="['region', 'city', 'store']"
/>
booleanfalsestring[][]_rowSpan 值(使用 rowSpanSuffix 配置的后缀)const columns = [
{ name: "部门", field: "department" },
{ name: "姓名", field: "name" },
{ name: "职位", field: "position" }
]
const data = [
{ department: "技术部", name: "张三", position: "工程师" },
{ department: "技术部", name: "李四", position: "工程师" },
{ department: "产品部", name: "王五", position: "产品经理" }
]
使用 :auto-row-merge-fields="['department']" 后,相同部门的行会自动合并。
const columns = [
{ name: "区域", field: "region" },
{ name: "城市", field: "city" },
{ name: "门店", field: "store" },
{ name: "商品", field: "product" }
]
const data = [
{ region: "华东", city: "上海", store: "门店A", product: "商品1" },
{ region: "华东", city: "上海", store: "门店A", product: "商品2" },
{ region: "华东", city: "南京", store: "门店B", product: "商品1" }
]
使用 :auto-row-merge-fields="['region', 'city', 'store']" 后:
| 特性 | 手动合并 | 自动合并 |
|---|---|---|
| 代码复杂度 | 高(需要计算逻辑) | 低(只需配置) |
| 数据修改 | 需要修改原始数据 | 不修改原始数据 |
| 维护成本 | 高 | 低 |
| 灵活性 | 高(可精确控制) | 中(基于规则) |
| 适用场景 | 复杂合并逻辑 | 常规分组合并 |