iview表格expand的使用方法
实现样式
实现方法
table
<Table
ref="table"
:columns="cloumns"
:data="data"
@on-selection-change="selectTable"
>
</Table>
cloumns
cloumns: [
{
type: 'selection',
width: 60,
align: 'center'
},
{
type: 'expand',
width: 50,
render: (h, params) => {
return h(TableExpand, {
ref: `tableItem${params.index}`, // 定义ref用于执行子组件的方法
props: {
row: params.row.childrenList,
taskList: this.taskList,
guildNameMap: this.guildNameMap
},
on: {
updateRow: (rowData) => {
this.updateData(params.index, rowData) // 子组件可以执行父组件的方法
}
}
})
}
},
...
]
通信
// TableExpand
updateRow () {
this.$emit('updateRow', this.data);
}
// Table
// 需要更新下数据
assignData.forEach(unit => {
unit.childrenList = this.$refs.table.$refs.tbody.$refs[`tableItem${unit.index}`].getData
})