Vue Element TreeGrid是一個基于Vue.js和Element UI的表格控件,可以方便地展示樹狀結(jié)構(gòu)的數(shù)據(jù)。
它支持以下特性:
- 嵌套的樹狀結(jié)構(gòu)
- 表格列可拖拽排序
- 點(diǎn)擊表頭可切換排序方式
- 表格列可自定義模板
- 支持分頁
- 支持篩選
- 支持導(dǎo)出數(shù)據(jù)為Excel
以下是一個簡單的示例:
<template>
<div class="tree-grid-demo">
<el-tree-grid
:data="data"
:columns="columns"
:default-expand-all="true"
:indent-size="30"
/>
</div>
</template>
<script>
export default {
data() {
return {
data: [
{
id: 1,
name: 'Parent 1',
children: [
{
id: 2,
name: 'Child 1-1'
},
{
id: 3,
name: 'Child 1-2'
}
]
},
{
id: 4,
name: 'Parent 2',
children: [
{
id: 5,
name: 'Child 2-1',
children: [
{
id: 6,
name: 'Grandchild 2-1-1'
}
]
}
]
}
],
columns: [
{
label: 'ID',
prop: 'id',
width: '80px'
},
{
label: 'Name',
prop: 'name'
}
]
};
}
};
</script>
上面的示例中,我們在組件的template中使用了<el-tree-grid>標(biāo)簽來展示表格,同時使用:data和:columns來指定數(shù)據(jù)和表格列的配置。
在data中,我們定義了一個樹狀結(jié)構(gòu)的數(shù)據(jù),其中每個節(jié)點(diǎn)有一個id和name屬性,children屬性用于指定其子節(jié)點(diǎn)。在columns中,我們定義了表格的兩列,分別對應(yīng)id和name屬性。
在實(shí)際使用中,我們可以根據(jù)自己的需求進(jìn)行配置,比如自定義列模板、添加事件監(jiān)聽等。