<view class="placeholder" bindlongpress="delect"> <view wx:for='{{pageList}}' wx:key="_id" class="event-list"> <navigator url="../home/imgshow?id={{item._id}}" class="event-link" > <view class="event-img" > <image mode="widthFix" src="{{item.fileID}}"> </image> </view> <view class="event-content" data-aid="{{item._id}}"> <view class="event-title" >"{{item.name}}"</view> <view class="event-desc">"{{item.discribe}}"</view> <view class="event-box"> <view class="event-time">"{{item.time}}"</view> </view> </view> </navigator> </view> </view> 在以上微信小程序wxml代码中为什么delect方法中event.currentTarget.dataset.aid显示undefined
时间: 2023-07-02 13:03:44 浏览: 114
在这段代码中,`bindlongpress="delect"`是给`view`标签绑定了一个长按事件,而在该标签内部的子组件`navigator`标签则通过`data-aid`属性绑定了一个自定义数据。长按事件触发时会自动传入一个`event`对象,其中包含了触发事件的相关信息,如当前组件的一些数据,可以通过`event.currentTarget.dataset`来获取。而在`delect`方法中,`event.currentTarget`指的是当前触发事件的组件,而不是绑定了`data-aid`属性的`navigator`标签,因此无法获取到该属性的值。要想获取`data-aid`的值,可以将`delect`方法绑定到`navigator`标签上,或者使用`event.target.dataset`来获取。例如:
```
<view class="placeholder">
<view wx:for='{{pageList}}' wx:key="_id" class="event-list">
<navigator url="../home/imgshow?id={{item._id}}" class="event-link" data-aid="{{item._id}}" bindlongpress="delect">
<view class="event-img">
<image mode="widthFix" src="{{item.fileID}}"></image>
</view>
<view class="event-content">
<view class="event-title">"{{item.name}}"</view>
<view class="event-desc">"{{item.discribe}}"</view>
<view class="event-box">
<view class="event-time">"{{item.time}}"</view>
</view>
</view>
</navigator>
</view>
</view>
// JS代码
Page({
delect: function(event) {
console.log(event.target.dataset.aid);
}
})
```
阅读全文