Sortable拖拽el-table
时间: 2023-11-07 18:01:55 浏览: 92
Sortable拖拽el-table是通过引入插件Sortable来实现的。在Vue项目中,可以使用npm下载sortablejs插件,并在需要使用的页面引入Sortable。然后,使用Sortable.create方法来实现拖拽排序的功能。具体代码可以参考以下示例:
```vue
<template>
<div>
<el-table :data="tableData" style="width: 100%">
<el-table-column prop="name" label="姓名"></el-table-column>
<el-table-column prop="age" label="年龄"></el-table-column>
<el-table-column prop="gender" label="性别"></el-table-column>
</el-table>
</div>
</template>
<script>
import Sortable from 'sortablejs'
export default {
data() {
return {
tableData: [
{ name: '张三', age: 18, gender: '男' },
{ name: '李四', age: 20, gender: '女' },
{ name: '王五', age: 22, gender: '男' },
{ name: '赵六', age: 25, gender: '女' }
]
}
},
mounted() {
const table = document.querySelector('.el-table__body-wrapper tbody')
const that = this
Sortable.create(table, {
onEnd: function(evt) {
const newIndex = evt.newIndex
const oldIndex = evt.oldIndex
const item = that.tableData.splice(oldIndex, 1)[0]
that.tableData.splice(newIndex, 0, item)
}
})
}
}
</script>
```
在上述示例中,我们使用el-table组件展示一个表格,并通过Sortable.create方法来实现了表格的拖拽排序功能。在拖拽结束后,通过获取新旧索引和数据数组,实现了数据的重新排序。
阅读全文