微信小程序 --- e.currentTarget.dataset.id 獲取不到值

版權聲明:本文爲博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/Eileen_crystal/article/details/79701632

直接代碼

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 解決。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章