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 相关文章推荐
使用Javascript和DOM Interfaces来处理HTML
Oct 09 Javascript
jquery中dom操作和事件的实例学习 下拉框应用
Dec 01 Javascript
js+css实现的简单易用兼容好的分页
Dec 30 Javascript
jquery进行数组遍历如何跳出当前的each循环
Jun 05 Javascript
jquery实现浮动的侧栏实例
Jun 25 Javascript
原生js和jquery分别实现横向导航菜单效果
May 13 Javascript
jQuery解析与处理服务器端返回xml格式数据的方法详解
Jul 04 Javascript
微信小程序 开发工具快捷键整理
Oct 31 Javascript
详解Angular的内置过滤器和自定义过滤器【推荐】
Dec 26 Javascript
vue 表单输入格式化中文输入法异常问题
May 30 Javascript
Element Dialog对话框的使用示例
Jul 26 Javascript
JavaScript事件概念详解(区分静态注册和动态注册)
Feb 05 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+MYSQL的文章管理系统(二)
2006/10/09 PHP
杏林同学录(八)
2006/10/09 PHP
PHP下escape解码函数的实现方法
2010/08/08 PHP
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
2013/06/24 PHP
PHP中使用curl入门教程
2015/07/02 PHP
Symfony2安装第三方Bundles实例详解
2016/02/04 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
2017/07/10 PHP
jquery 图片Silhouette Fadeins渐显效果
2010/02/07 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
关于div自适应高度/左右高度自适应一致的js代码
2013/03/22 Javascript
jquery无刷新验证邮箱地址实现实例
2014/02/19 Javascript
javascript淘宝主图放大镜功能
2016/10/20 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
Vue filters过滤器的使用方法
2017/07/14 Javascript
基于vue 开发中出现警告问题去除方法
2018/01/25 Javascript
Vue中props的使用详解
2018/06/15 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
2019/04/08 Javascript
实用Javascript调试技巧分享(小结)
2019/06/18 Javascript
使用layer弹窗提交表单时判断表单是否输入为空的例子
2019/09/26 Javascript
node.js中Buffer缓冲器的原理与使用方法分析
2019/11/23 Javascript
python基础知识小结之集合
2015/11/25 Python
使用Nginx+uWsgi实现Python的Django框架站点动静分离
2016/03/21 Python
Django 实现下载文件功能的示例
2018/03/06 Python
详解PyTorch批训练及优化器比较
2018/04/28 Python
Django之Mode的外键自关联和引用未定义的Model方法
2018/12/15 Python
python opencv 实现对图像边缘扩充
2020/01/19 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
2020/09/16 Python
全球领先的美容用品专卖店:Beauty Plus Salon
2018/09/04 全球购物
Opodo意大利:欧洲市场上领先的在线旅行社
2019/10/24 全球购物
成教自我鉴定
2013/10/27 职场文书
商场中秋节活动方案
2014/02/07 职场文书
义务教育学校标准化建设汇报材料
2014/08/16 职场文书
四风问题查摆材料
2014/08/25 职场文书
群众路线教育查摆剖析材料
2014/10/10 职场文书
少先大队干部竞选稿
2015/11/20 职场文书