微信小程序中target和currentTarget的区别小结


Posted in Javascript onNovember 06, 2020

前言

在小程序中,e.target与e.currentTarget是非常重要的,尤其是涉及到页面传值时

currentTarget和target都是组件的一些属性值集合,由“data-属性名”定义的一些属性值

currentTarget:事件触发的当前事件(当前事件,可能是触发事件的源组件,可能是触发的事件组件(即触发事件源组件的子元素),此时点击子元素还是父元素,都是当前事件,应用e.currentTarget
target:触发事件的源组件(事件注册/绑定所在组件)

举个例子:

<view bindtap="parentClick" data-parent="父元素">
<view data-child="子元素">编辑</view> 
 </view>

然后点击父元素中的子元素时:

parentClick事件中的currentTarget和target打印出来,如下:

parentClick:function(e){
console.log("点击父元素")
console.log("target",e.target)//target:{child:"子元素"}
console.log("currentTarget",e.currentTarget)//target:{parent:"父元素"}
}

因为绑定在父元素上的parentClick事件,是由子元素触发的,所以target的值就是子元素所包含的一些属性值集合;currentTarget则是绑定事件的该组件(父元素)的属性值集合。

给子元素绑定一个事件:childClick,打印出来的currentTarget和target就是一样的。

<view bindtap="parentClick" data-parent="父元素">
<view bindtap="childClick" data-child="子元素">编辑</view> 
 </view>

然后点击子元素事件:

childClick:function(e){
console.log("点击父元素")
console.log("target",e.target)//target:{child:"子元素"}
console.log("currentTarget",e.currentTarget)//target:{child:"子元素"}
}

扩展

结合this来看:

  • this === e.currentTarget 总是为true
  • this === e.target 有可能不是true

到此这篇关于微信小程序中target和currentTarget区别的文章就介绍到这了,更多相关微信小程序target和currentTarget区别内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
有趣的javascript数组定义方法
Sep 10 Javascript
Jquery Ajax请求代码(2)
Jan 07 Javascript
动感效果的TAB选项卡jquery 插件
Jul 09 Javascript
jquery中prop()方法和attr()方法的区别浅析
Sep 06 Javascript
百度判断手机终端并自动跳转js代码及使用实例
Jun 11 Javascript
AngularJs表单验证实例代码解析
Nov 29 Javascript
JS实现简易刻度时钟示例代码
Mar 11 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
Sep 07 Javascript
使用vue-aplayer插件时出现的问题的解决
Mar 02 Javascript
React router动态加载组件之适配器模式的应用详解
Sep 12 Javascript
ES6基础之默认参数值
Feb 21 Javascript
Vue-router 报错NavigationDuplicated的解决方法
Mar 31 Javascript
vue router-link 默认a标签去除下划线的实现
Nov 06 #Javascript
微信小程序调用后台service教程详解
Nov 06 #Javascript
Nuxt.js nuxt-link与router-link的区别说明
Nov 06 #Javascript
在nuxt中使用路由重定向的实例
Nov 06 #Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
Nov 06 #Javascript
Nuxt的路由配置和参数传递方式
Nov 06 #Javascript
nginx配置域名后的二级目录访问不同项目的配置操作
Nov 06 #Javascript
You might like
对Session和Cookie的区分与解释
2007/03/16 PHP
百度站点地图(百度sitemap)生成方法分享
2014/01/09 PHP
thinkphp数据查询和遍历数组实例
2014/11/28 PHP
php面试实现反射注入的详细方法
2019/09/30 PHP
Laravel实现批量更新多条数据
2020/04/06 PHP
24款非常有用的 jQuery 插件分享
2011/04/06 Javascript
Jquery index()方法 获取相应元素索引值
2012/10/12 Javascript
Jquery post传递数组方法实现思路及代码
2013/04/28 Javascript
加载远程图片时,经常因为缓存而得不到更新的解决方法(分享)
2013/06/26 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
js中array的sort()方法使用介绍
2014/02/20 Javascript
Knockout自定义绑定创建方法
2015/12/26 Javascript
浅析JavaScript中的array数组类型系统
2016/07/18 Javascript
Angularjs之filter过滤器(推荐)
2016/11/27 Javascript
基于NodeJS+MongoDB+AngularJS+Bootstrap开发书店案例分析
2017/01/12 NodeJs
nodejs连接mysql数据库简单封装示例-mysql模块
2017/04/10 NodeJs
nodejs 生成和导出 word的实例代码
2018/07/31 NodeJs
详解webpack模块加载器兼打包工具
2018/09/11 Javascript
vue安装和使用scss及sass与scss的区别详解
2018/10/15 Javascript
python中的yield使用方法
2014/02/11 Python
Python使用函数默认值实现函数静态变量的方法
2014/08/18 Python
Python常用随机数与随机字符串方法实例
2015/04/09 Python
Python对列表排序的方法实例分析
2015/05/16 Python
python 对多个csv文件分别进行处理的方法
2019/01/07 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
Ellesse英国官网:意大利高级运动品牌
2019/07/23 全球购物
银行毕业实习自我鉴定
2013/09/19 职场文书
中职生自荐信
2013/10/13 职场文书
大学三年的自我评价
2013/12/25 职场文书
幼儿园中班教学反思
2014/02/10 职场文书
小学爱国卫生月活动总结
2014/06/30 职场文书
2016中考冲刺决心书
2015/09/22 职场文书
周一早安温馨问候祝福语!
2019/07/15 职场文书
公文格式,规则明细(新手收藏)
2019/07/23 职场文书
《和时间赛跑》读后感3篇
2019/12/16 职场文书
win11如何查看端口是否被占用? Win11查看端口是否占用的技巧
2022/04/05 数码科技