Vue中如何通过组件实现原生事件监听?

更新于
2026-09-23 19:28:58
1阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计414个文字,预计阅读时间需要2分钟。

Vue中如何通过组件实现原生事件监听?

在首页开发中,页面右下角设有返回顶部的箭头组件,独立封装成BackTop组件。但其出现依赖于首页的滚动状态,即需额外一个Scroll组件。若在BackTop组件内直接监听,则需监听。

在首页开发中,右下角有一个返回顶部的小箭头,将它单独封装成一个BackTop组件,但是它何时出现需要依赖于首页的滑动,即另外一个Scroll组件。如果直接在BackTop组件里面监听,则需要通过this.$emit将事件发射到Home组件中,又在Home中监听自定义事件,比较复杂。因此,我们直接在Home中对BackTop组件进行监听,使用 .native

官网对于native的解释为:

.native:监听组件根元素的原生事件

代码如下:

在Home.vue中对back-top组件进行点击事件监听:

Vue中如何通过组件实现原生事件监听?

this.$refs.scroll 得到的是 Scroll 组件,this.$refs.scroll.scroll 得到的是Scroll组件中 data 中定义的 scroll属性,

better-scroll中有个方法是 scrollTo,

这里顺便讲解一下 ref 属性的使用:

ref 被用来给DOM元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs对象上。

阅读全文

本文共计414个文字,预计阅读时间需要2分钟。

Vue中如何通过组件实现原生事件监听?

在首页开发中,页面右下角设有返回顶部的箭头组件,独立封装成BackTop组件。但其出现依赖于首页的滚动状态,即需额外一个Scroll组件。若在BackTop组件内直接监听,则需监听。

在首页开发中,右下角有一个返回顶部的小箭头,将它单独封装成一个BackTop组件,但是它何时出现需要依赖于首页的滑动,即另外一个Scroll组件。如果直接在BackTop组件里面监听,则需要通过this.$emit将事件发射到Home组件中,又在Home中监听自定义事件,比较复杂。因此,我们直接在Home中对BackTop组件进行监听,使用 .native

官网对于native的解释为:

.native:监听组件根元素的原生事件

代码如下:

在Home.vue中对back-top组件进行点击事件监听:

Vue中如何通过组件实现原生事件监听?

this.$refs.scroll 得到的是 Scroll 组件,this.$refs.scroll.scroll 得到的是Scroll组件中 data 中定义的 scroll属性,

better-scroll中有个方法是 scrollTo,

这里顺便讲解一下 ref 属性的使用:

ref 被用来给DOM元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs对象上。

阅读全文