微信小程序 --- 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 解決。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM