Vue如何实现监听组件原生事件


Posted in Javascript onJuly 03, 2020

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

官网对于native的解释为:

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

代码如下:

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

Vue如何实现监听组件原生事件Vue如何实现监听组件原生事件

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

Vue如何实现监听组件原生事件

better-scroll中有个方法是 scrollTo,

Vue如何实现监听组件原生事件

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

ref 被用来给DOM元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs对象上。$refs 是所有注册过的ref的一个集合,

如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;如果用在子组件上,引用就指向组件实例。

1.在普通的dom结构中,在元素上添加ref属性,this.$refs.ref获取的是具有这个ref属性的dom节点

2.在vue组件中,this.$refs.ref获取的是组件的实例,组件中的data可以直接this.$refs.ref.key获取数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
URL编码转换,escape() encodeURI() encodeURIComponent()
Dec 27 Javascript
jQuery 遍历json数组的实现代码
Sep 22 Javascript
jquery中dom操作和事件的实例学习-表单验证
Nov 30 Javascript
深入理解JSON数据源格式
Jan 10 Javascript
json传值以及ajax接收详解
May 24 Javascript
BootStrap 超链接变按钮的实现方法
Sep 25 Javascript
jQuery自定义组件(导入组件)
Nov 08 Javascript
jQuery中checkbox反复调用attr('checked', true/false)只有第一次生效的解决方法
Nov 16 Javascript
jQuery实现可移动选项的左右下拉列表示例
Dec 26 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 jQuery
小程序scroll-view安卓机隐藏横向滚动条的实现详解
May 16 Javascript
VUE 动态组件的应用案例分析
Dec 02 Javascript
如何在node环境实现“get数据解析”代码实例
Jul 03 #Javascript
JavaScrip如果基于url实现图片下载
Jul 03 #Javascript
基于VUE实现判断设备是PC还是移动端
Jul 03 #Javascript
JavaScript如何判断对象有某属性
Jul 03 #Javascript
详解element-ui动态限定的日期范围选择器代码片段
Jul 03 #Javascript
JS常见错误(Error)及处理方案详解
Jul 02 #Javascript
vue过滤器实现日期格式化的案例分析
Jul 02 #Javascript
You might like
destoon数据库表说明汇总
2014/07/15 PHP
分享php分页的功能模块
2015/06/16 PHP
PHP设置头信息及取得返回头信息的方法
2016/01/25 PHP
PHP简单获取及判断提交来源的方法
2016/04/22 PHP
php实现用户登陆简单实例
2017/04/04 PHP
详解PHP使用Redis存储session时的一个Warning定位
2017/07/05 PHP
windows环境下使用Composer安装ThinkPHP5
2018/05/18 PHP
PHP使用SOAP调用API操作示例
2018/12/25 PHP
PHP结合Redis+MySQL实现冷热数据交换应用案例详解
2019/07/09 PHP
node在两个div之间移动,用ztree实现
2013/03/06 Javascript
容易造成JavaScript内存泄露几个方面
2014/09/04 Javascript
理解javascript对象继承
2016/04/17 Javascript
AngularJS变量及过滤器Filter用法分析
2016/11/22 Javascript
jQuery设置图片等比例缩小的方法
2017/04/29 jQuery
浅谈vue-lazyload实现的详细过程
2017/08/22 Javascript
Vue项目中Api的组织和返回数据处理的操作
2019/11/04 Javascript
在vue中使用jsonp进行跨域请求接口操作
2020/10/29 Javascript
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
python函数返回多个值的示例方法
2013/12/04 Python
浅析Python中的join()方法的使用
2015/05/19 Python
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
Django中的session用法详解
2020/03/09 Python
DjangoWeb使用Datatable进行后端分页的实现
2020/05/18 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
2020/06/29 Python
西班牙在线宠物商店:zooplus.es
2017/02/24 全球购物
俄罗斯家居用品购物网站:Евродом
2020/11/21 全球购物
给水工程专业毕业生自荐信
2014/01/28 职场文书
合伙协议书
2014/04/23 职场文书
英文求职信范文
2014/05/23 职场文书
法律专业求职信
2014/05/24 职场文书
2014年体育教师工作总结
2014/12/03 职场文书
检讨书范文500字
2015/01/28 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
Jupyter Notebook 如何修改字体和大小以及更改字体样式
2021/06/03 Python
使用canvas对video视频某一刻截图功能
2021/09/25 HTML / CSS
tomcat的catalina.out日志按自定义时间格式进行分割的操作方法
2022/04/02 Servers