eltable拖拽排序
时间: 2023-07-20 16:41:45 浏览: 99
实现eltable的拖拽排序可以通过以下步骤:
1. 在el-table组件中添加vuedraggable插件,该插件可以实现拖拽排序的功能。
2. 在el-table组件中设置draggable属性为true,这样就可以使表格的行可以被拖拽。
3. 在el-table-column组件中设置sortable属性为false,这样就可以禁止表格的列被排序。
4. 在el-table组件中添加@change事件,该事件会在拖拽排序完成后触发,可以通过该事件获取拖拽排序后的数据。
下面是一个示例代码:
```
<template>
<el-table :data="tableData" :row-key="row => row.id" :draggable="true" @change="handleChange">
<el-table-column prop="name" label="姓名" :sortable="false"></el-table-column>
<el-table-column prop="age" label="年龄" :sortable="false"></el-table-column>
<el-table-column prop="address" label="地址" :sortable="false"></el-table-column>
</el-table>
</template>
<script>
import draggable from 'vuedraggable'
export default {
data() {
return {
tableData: [
{ id: 1, name: '张三', age: 18, address: '北京' },
{ id: 2, name: '李四', age: 22, address: '上海' },
{ id: 3, name: '王五', age: 28, address: '广州' },
{ id: 4, name: '赵六', age: 35, address: '深圳' }
]
}
},
components: {
draggable
},
methods: {
handleChange() {
console.log(this.tableData)
}
}
}
</script>
```
在这个示例中,我们引入了vuedraggable插件,并在el-table组件中设置了draggable属性为true。在el-table-column组件中设置了sortable属性为false,以禁止列的排序。最后在el-table组件中添加了@change事件,用于获取拖拽排序后的数据。
阅读全文