WeChatアプレットイベントバインディングとターゲットとcurrentTargetの違いおよびデータセットの使用

WeChatアプレットイベントバインディング

1.イベントタイプ(一般的に使用されます)

タップ:イベントをクリックします。

longtap:長押しイベント。

タッチスタート:タッチスタート;

タッチエンド:タッチエンド;

touchcansce:タッチをキャンセルします。

2.イベントバインディングタイプ

バインディングバインディング;
キャッチバインディング;(イベントバブリングを防ぐことができます)

例:

page.wxml中

<view id="tapTest" data-hi="Weixin" bindtap="tapName">点击</view>

page.js

Page({
    
    
  tapName: function(event) {
    
    
    console.log(event)
  }
})

スプールデータ

{
    
    
  "type":"tap",
  "timeStamp":895,
  "target": {
    
    
    "id": "tapTest",
    "dataset":  {
    
    
      "hi":"Weixin"
    }
  },
  "currentTarget":  {
    
    
    "id": "tapTest",
    "dataset": {
    
    
      "hi":"Weixin"
    }
  },
  "detail": {
    
    
    "x":53,
    "y":14
  },
  "touches":[{
    
    
    "identifier":0,
    "pageX":53,
    "pageY":14,
    "clientX":53,
    "clientY":14
  }],
  "changedTouches":[{
    
    
    "identifier":0,
    "pageX":53,
    "pageY":14,
    "clientX":53,
    "clientY":14
  }]
}

その中で、私たちはtargetとcurrentTargetの違いを最も懸念しています

target:触发事件的元素。
currentTarget:事件绑定的元素。
currentTarget是我们绑定了的组件,target是发生事件的组件;

データセットの使用

currentTarget里面的 dataset是没有数据的在组件节点中可以附加一些自定义数据。
这样,在事件中可以获取这些自定义的节点数据,用于事件的逻辑处理。

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_49092628/article/details/112470672