场景:一般el-table的删除操作,在删除数据后前端会重新调接口获取数据,此时列表更新会自动回到el-table顶部。但是我们想要让列表刷新后回到当时的滚动条位置那里,那么就需要记住删除时候的位置。
<el-table ref="eltable" :data="tableData2">
<el-table-column prop="fileId" label="操作" width="165">
<template slot-scope="scope">
<span @click="del(scope.row)">删除</span>
</template>
</el-table-column>
</el-table>
data () {
return {
scrollTop: 0,//滚动条位置
tableData2:[],
}
},
methods: {
del (row) {
console.log('删除时候的滚动条位置', this.$refs.eltable.bodyWrapper.scrollTop)
// 注意ref
this.scrollTop = this.$refs.eltable.bodyWrapper.scrollTop
},
search(){
// 重新获取列表时候 将上次记录的位置复制给滚动条即可
this.$refs.eltable.bodyWrapper.scrollTop = this.scrollTop
}
}