zoukankan      html  css  js  c++  java
  • 微信小程序 --- e.currentTarget.dataset.id 获取不到值

    直接代码

    wxml代码片段

    <view class='ranksList' wx:for="{{ranksLb}}">
          <view class='ranksListName'><image src='../image/icon-21.png'></image><text>{{item.name}}</text></view>
          <view class='ranksListNum'><label>下级:</label><text bindtap='tosubordinate' data-workerId='{{item.id}}'>{{item.subordinateNum}}-{{item.id}}</text></view>
          <view class='ranksListIphone'><image src='../image/icon-22.png'></image><text>{{item.mobile}}</text></view>
        </view> 

    js代码片段

    //事件处理函数
      tosubordinate: function (e) {
        var workerId = e.currentTarget.dataset.workerId;
        console.log("workerId------" + workerId);
        wx.navigateTo({
          url: '../subordinate/subordinate?workerId=' + workerId
        })
      },

    结果 workerId undefined。

    OK,重点便在这里。在组件中可以定义数据,这些数据将会通过事件传递给 SERVICE。 书写方式: 以data-开头,多个单词由连字符-链接,不能有大写(大写会自动转成小写)如data-element-type,最终在 event.target.dataset 中会将连字符转成驼峰elementType。 
    这里写图片描述 
    看代码可知,这里是自定义了一个名字为id的dataset,因此在事件函数中,我们可以通过e.currentTarget.dataset.id访问到绑定到该组件的自定义数据。

    修改:

    //事件处理函数
      tosubordinate: function (e) {
        var workerId = e.currentTarget.dataset.workerid;
        console.log("workerId------" + workerId);
        wx.navigateTo({
          url: '../subordinate/subordinate?workerId=' + workerId
        })
      },

    主要修改了 e.currentTarget.dataset.workerid.

    workerId –> workerid 解决。

  • 相关阅读:
    Codeforces Round #336 B
    Codeforces Round #336 A
    hiho一下157
    Codeforces Round #420 E
    Codeforces Round #420 C
    Codeforces Round #420 B
    Codeforces Round #420 A
    Codeforces Round #418 C
    Codeforces Round #418 B
    CodeForces 811D Vladik and Favorite Game bfs,模拟
  • 原文地址:https://www.cnblogs.com/kongxc/p/8848551.html
Copyright © 2011-2022 走看看