比如有一个列表,每个子项都可以点击,我们可以把点击事件放在图片上也可以直接放在子项的根组件上,
target:指的是当前点击的组件
currentTarget:指的是事件捕获的组件
<view catchTap = "fetchImage">
<image src="a.png" data-postId = "item.id">
</view>
上面这段代码,如果点击想获取自定义属性postId的值是这样的:
fetchImage:function(event){
var id = event.target.dataset.postid;
}
因为我点击的是image,但是在小程序中子组件没有这个方法,会一直向上去找,这里在view组件找到了这个方法,要获取postid的值是在image上获取,所以用的是target,而如果使用currentTarget时获取view,而view上并没有定义postid的自定义属性.
在上面的demo中:
target:指的是image
currentTarget:指的是view