Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.3k views
in Technique[技术] by (71.8m points)

vue-element 如何实现切换分页表格滚动条置顶功能?

image.png
Rt. 大概界面就张这样 自己封装了一个自定义指令 代码如下

/**
 * @desc 仅支持 element 表格的 回到顶部
 * @param 'top'-回到顶部 'bottom'-回到底部 默认 top
 */
Vue.directive('table-scroll', function(el, binding) {
  console.log(binding,'table-scroll')
  const type = binding.value || 'top' //默认回到顶部
  const target = el.querySelector('.el-table__body-wrapper') //目标 dom
  const scrollTop = type === 'top' ? 0 : target.scrollHeight
  target.scrollTop = scrollTop
})

出现的 bug:

在点击右侧按钮的时候也出现了同样的效果**(注意:按钮的个数不固定,之后可能会新增 给每个按钮事件绑定对应的参数不现实...)**

理想效果:

只有点击分页的时候表格才会置顶,其他一概区域无效

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

何必要用指令去做呢 $refs获取表格 滚动到顶部就行了 指令在你数据更新的时候都回去执行 你这本身是事件的功能


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...