Javascript Vue.js-如何从vuetify v-dialog组件“抓取”滚动事件

Javascript Vue.js-如何从vuetify v-dialog组件“抓取”滚动事件,javascript,vue.js,vuetify.js,Javascript,Vue.js,Vuetify.js,我正在处理的javascript项目正试图合并一个“滚动到顶部”按钮,该按钮仅在Vuetify v-dialog组件中向下滚动y轴20px后才会呈现。我们还有一个v-card,v-treeview在v-dialog中有可滚动的项目列表。然而,我似乎不知道如何在v-dialog组件中“抓取”滚动事件来触发任何东西 <v-dialog> <v-card> <v-treeview> //scrollable list </v-treevi

我正在处理的javascript项目正试图合并一个“滚动到顶部”按钮,该按钮仅在Vuetify v-dialog组件中向下滚动y轴20px后才会呈现。我们还有一个v-card,v-treeview在v-dialog中有可滚动的项目列表。然而,我似乎不知道如何在v-dialog组件中“抓取”滚动事件来触发任何东西

<v-dialog>
  <v-card>
    <v-treeview>  //scrollable list
    </v-treeview>
  </v-card>
</v-dialog>
有什么想法吗

这是一个非常类似的代码笔,我正在努力完成。

谢谢

将可滚动道具添加到

将v-scroll.self=onScroll添加到 按v-scroll文档滚动

将id添加到 id=为scrolltop选择的请求表单

添加按钮滚动到 顶部与上面的代码笔相同

添加toTop方法:

toTop() {
  document.getElementById('requestform').scrollTop = 0
},

我遇到了与OP相同的问题。在对话框中没有出现v-scroll或$vuetify.goTo的预期行为

最终,我通过利用

在对话框中添加的div上

在模板中:

<v-dialog>
  <div id="thisElement">
    <v-card>
      <v-treeview>
         //scrollable list
         <v-btn @click="goToTop">Scroll Up</v-btn>
      </v-treeview>
    </v-card>
  </div>
</v-dialog>

看起来你忘了添加link@DavidGo谢谢你抓住了!那么,您已经尝试在对话框中放置@scroll事件,对吗?您添加了Scrollable道具吗?我确实试过了。老实说,因为v-treeview在v-card中,也就是在v-dialog中,所以我甚至不确定哪个组件是真正滚动的组件。我已经尝试在所有的屏幕上添加一个scroll事件和v-scroll指令,但我无法让任何scroll事件触发任何东西。codePen示例作为一个独立组件完美地运行在任何页面视图的根级别,因为它可以由DOM窗口事件触发,但我无法从Vuetify组件内部访问任何“scroll”事件。他们请求在滚动视图时触发的事件。这样,它们可以在滚动开始时触发行为。我相信,您的回答没有显示这是如何完成的。是的,很遗憾,我无法在对话框中识别事件,因为它没有出现在对话框中,而只会出现在文档级别。这可能是因为对话框已从正常文档流中删除。
goToTop() {
    document.getElementByID("thisElement").scrollIntoView();
  },