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分解url参数(面向对象-极简主义法应用)
Aug 09 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
Nov 19 Javascript
JS操作CSS随机改变网页背景实现思路
Mar 10 Javascript
JavaScript使用push方法添加一个元素到数组末尾用法实例
Apr 06 Javascript
jq实现左侧显示图片右侧文字滑动切换效果
Aug 04 Javascript
Bootstrap每天必学之轮播(Carousel)插件
Apr 25 Javascript
jQuery Validate插件实现表单验证
Aug 19 Javascript
JavaScript代码判断输入的字符串是否含有特殊字符和表情代码实例
Aug 17 Javascript
mpvue跳转页面及注意事项
Aug 03 Javascript
微信小程序获取地理位置及经纬度授权代码实例
Sep 18 Javascript
构建大型 Vue.js 项目的10条建议(小结)
Nov 14 Javascript
vue-iview动态新增和删除的方法
Jun 17 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脚本的10个技巧(8)
2006/10/09 PHP
php学习笔记 [预定义数组(超全局数组)]
2011/06/09 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
PHP校验15位和18位身份证号的类封装
2018/11/07 PHP
php转换上传word文件为PDF的方法【基于COM组件】
2019/06/10 PHP
JavaScript 动态生成方法的例子
2009/07/22 Javascript
JS 各种网页尺寸判断实例方法
2013/04/18 Javascript
node.js中的fs.createReadStream方法使用说明
2014/12/17 Javascript
javascript中键盘事件用法实例分析
2015/01/30 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
jQuery事件详解
2017/02/23 Javascript
JavaScript html5 canvas实现图片上画超链接
2017/10/20 Javascript
Vue 3.0 全家桶抢先体验
2020/04/28 Javascript
在Vuex中Mutations修改状态操作
2020/07/24 Javascript
React服务端渲染原理解析与实践
2021/03/04 Javascript
python MySQLdb Windows下安装教程及问题解决方法
2015/05/09 Python
Python实现批量下载文件
2015/05/17 Python
python基于pyDes库实现des加密的方法
2017/04/29 Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
2018/09/13 Python
python 设置xlabel,ylabel 坐标轴字体大小,字体类型
2019/07/23 Python
浅谈Python type的使用
2019/11/19 Python
详解Python yaml模块
2020/09/23 Python
GitHub上值得推荐的8个python 项目
2020/10/30 Python
总结html5自定义属性有哪些
2020/04/01 HTML / CSS
SmartBuyGlasses英国:购买太阳镜和眼镜
2018/01/29 全球购物
什么是唯一索引
2015/07/05 面试题
网络安全方面的面试题
2016/01/07 面试题
超市中秋节促销方案
2014/03/21 职场文书
环境整治工作方案
2014/05/18 职场文书
研究生就业推荐表导师评语
2014/12/31 职场文书
幼儿园大班教师个人总结
2015/02/05 职场文书
拥有这5个特征人,“命”都不会太差
2019/08/16 职场文书
Oracle设置DB、监听和EM开机启动的方法
2021/04/25 Oracle
python 如何做一个识别率百分百的OCR
2021/05/29 Python
Python快速实现一键抠图功能的全过程
2021/06/29 Python
ajax请求前端跨域问题原因及解决方案
2021/10/16 Javascript