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 相关文章推荐
JS中把字符转成ASCII值的函数示例代码
Nov 21 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
May 09 Javascript
javascript每日必学之继承
Feb 23 Javascript
如何用JS判断两个数字的大小
Jul 21 Javascript
Vue数据驱动模拟实现3
Jan 11 Javascript
javascript设计模式之策略模式学习笔记
Feb 15 Javascript
node.js中grunt和gulp的区别详解
Jul 17 Javascript
原生JS实现的跳一跳小游戏完整实例
Jan 27 Javascript
JavaScript遍历DOM元素的常见方式示例
Feb 16 Javascript
vue2.0基于vue-cli+element-ui制作树形treeTable
Apr 30 Javascript
node省市区三级数据性能测评实例分析
Nov 06 Javascript
vue router-link 默认a标签去除下划线的实现
Nov 06 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
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
php 获取文件行数的方法总结
2016/10/11 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
2012/02/03 Javascript
Javascript alert消息换行的方法
2013/08/07 Javascript
js判断60秒以及倒计时示例代码
2014/01/24 Javascript
jquery通过visible来判断标签是否显示或隐藏
2014/05/08 Javascript
JavaScript的RequireJS库入门指南
2015/07/01 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
深入理解选择框脚本[推荐]
2016/12/13 Javascript
Zepto实现密码的隐藏/显示
2017/04/07 Javascript
Vue实现点击后文字变色切换方法
2018/02/11 Javascript
vue组件传递对象中实现单向绑定的示例
2018/02/28 Javascript
Vue-cli assets SubDirectory及PublicPath区别详解
2020/08/18 Javascript
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
Python list操作用法总结
2015/11/10 Python
Python单链表简单实现代码
2016/04/27 Python
Python文本相似性计算之编辑距离详解
2016/11/28 Python
python中子类继承父类的__init__方法实例
2016/12/15 Python
Python命令启动Web服务器实例详解
2017/02/23 Python
python清除字符串中间空格的实例讲解
2018/05/11 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
react+django清除浏览器缓存的几种方法小结
2019/07/17 Python
Pandas之groupby( )用法笔记小结
2019/07/23 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
2019/08/05 Python
Pytorch 计算误判率,计算准确率,计算召回率的例子
2020/01/18 Python
Python实现仿射密码的思路详解
2020/04/23 Python
利用CSS3的transform做的动态时钟效果
2011/09/21 HTML / CSS
css3 线性渐变和径向渐变示例附图
2014/04/08 HTML / CSS
CSS3制作炫酷的自定义发光文字
2016/03/28 HTML / CSS
应届毕业生自我评价分享
2013/12/15 职场文书
项目合作协议书
2014/04/16 职场文书
2015年综治维稳工作总结
2015/04/07 职场文书
[有人@你]你有一封绿色倡议书,请查收!
2019/07/18 职场文书
三好学生竞选稿范文
2019/08/21 职场文书