如何捕获 v-data-table 组件上的滚动事件?

Posted

技术标签:

【中文标题】如何捕获 v-data-table 组件上的滚动事件?【英文标题】:How to catch scrolling event on v-data-table component? 【发布时间】:2021-10-30 07:34:50 【问题描述】:

有没有办法在 Vuetify frmework 的 v-data-table 组件上捕获滚动事件?

我的意思是表格具有固定高度的情况,因此表格主体会滚动。

<v-data-table
  fixed-header
  :height=400
  :headers="headers"
  :items="desserts"
  item-key="name"
  disable-pagination
  hide-default-footer
></v-data-table>

https://codepen.io/Zurab-D/pen/yLXOyRJ

【问题讨论】:

【参考方案1】:

代码如下:

new Vue(
  el: '#app',
  vuetify: new Vuetify(),
  data: () => (
    desserts: Array.from( length: 5000 ).map((v, k) => (
        name: `#$k`,
        calories: 518,
    )),
    headers: [
       text: 'Dessert', value: 'name' ,
       text: 'Calories', value: 'calories' ,
    ],
  ),
  mounted() 
    document.addEventListener('wheel', this.onScroll)
  ,
  methods: 
    onScroll : function()
      console.log('scroll')
    
  
)

【讨论】:

我的意思是这个组件必须有一个内置的方法。但是如果没有,那么这个方法也很好,谢谢

以上是关于如何捕获 v-data-table 组件上的滚动事件?的主要内容,如果未能解决你的问题,请参考以下文章

从子组件更改事件 v-data-table 行的背景

如何在不将 onscroll 处理程序附加到每个容器的情况下捕获页面上的所有滚动事件

Nativescript Vue:滚动ListView时如何关闭searchBar键盘?

Vuetify:如何过滤 v-data-table 中的数据?

Vuetify - 在 v-data-table 上包装标题文本

Vuetify 删除 v-data-table 上的分页