欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序?qū)崿F(xiàn)bindtap等事件傳參

 更新時間:2019年04月08日 11:23:25   作者:前端向朔  
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)bindtap等事件傳參,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

之前一直以為微信小程序按鈕點擊事件傳參是和web端相同,即在事件中寫明所傳遞的參數(shù)即可,但是這樣嘗試過以后發(fā)現(xiàn)小程序的控制臺報錯,報所寫的bindtap中參數(shù)錯誤,之后百度發(fā)現(xiàn),小程序按鈕點擊這類事件時一般的處理方法是指明元素所在的id,bindtap只是寫明函數(shù)名,例如,bindtap='setNumber',而不是bindtap='setNumber(1)',在js中只要寫function(e).通過e可以獲取所傳過來元素的所有信息。

什么是事件

事件是視圖層到邏輯層的通訊方式。 事件可以將用戶的行為反饋到邏輯層進(jìn)行處理。

事件可以綁定在組件上,當(dāng)達(dá)到觸發(fā)事件,就會執(zhí)行邏輯層中對應(yīng)的事件處理函數(shù)。

事件對象可以攜帶額外信息,如 id, dataset, touches。

看圖,因為需要傳遞的數(shù)據(jù)比較多,所以我們通過dataset攜帶參數(shù)信息。如果只有一個參數(shù),可以通過id來傳遞。

詳解(以常見的tap點擊事情為例)

wxml

<view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view>

JS

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

event 打印結(jié)果

{
"type":"tap",
"timeStamp":895,
/////////////////////////////////
"target": {
 "id": "tapTest",
 "dataset": {
 "hi":"WeChat"
 }
},
"currentTarget": {
 "id": "tapTest",
 "dataset": {
 "hi":"WeChat"
 }
},
///////////////////////////////
"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
}]
}

注意兩點:

1、data-名稱 不能有大寫字母,如果需要,可以通過 - (中劃線)來連接單詞,編譯的時候小程序會將第二個單詞首字母自動大寫。圖中代碼是為了自己標(biāo)志,所以第二個單詞的首字母大寫了,其實可以不用。data-* 屬性中不可以存放對象。

2、注意打印結(jié)果中target和currentTarget的區(qū)別。

  • target 觸發(fā)事件的源組件。
  • currentTarget 事件綁定的當(dāng)前組件。

如果你在父容器上綁定了事件并傳參,當(dāng)你點擊父容器時,事件綁定的組件和觸發(fā)事件的源組件是同一個元素,所以currentTarget 、target 都可以拿到參數(shù),但是當(dāng)你點擊子元素時,target 就不是事件綁定的組件了,所以拿不到參數(shù)。
由于事件冒泡的機制,父容器上綁定的事件依然可以觸發(fā),所以currentTarget 依然可以拿到參數(shù)。

說明

id傳參和dataset類似,只是最后獲取值的時候不同。event.currentTarget.id

PS:小程序 view使用bindtap傳值問題

如圖,view標(biāo)簽 加 bindtap事件,用data-name傳值,如果view中只有文字,點擊整個view區(qū)域都可以接收到data-name的值,如果view里面加一個lable標(biāo)簽,那么點擊lable包裹的區(qū)域,data-name取不到值。  解決方法:把取值方式  由e.target.dataset.carrierName  修改為e.currentTarget.dataset.carrierName即可

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談js控制li標(biāo)簽排序問題 js調(diào)用php函數(shù)的方法

    淺談js控制li標(biāo)簽排序問題 js調(diào)用php函數(shù)的方法

    下面小編就為大家?guī)硪黄獪\談js控制li標(biāo)簽排序問題 js調(diào)用php函數(shù)的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • JavaScript實現(xiàn)掃雷小游戲

    JavaScript實現(xiàn)掃雷小游戲

    這篇文章主要為大家詳細(xì)介紹了JavaScript實現(xiàn)掃雷小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • 一文詳解JavaScript中的Mixin

    一文詳解JavaScript中的Mixin

    類的出現(xiàn)最終使JavaScript非常容易使用繼承法,JavaScript類比大多數(shù)人意識到的更強大,它是構(gòu)建真正的mixins的良好基礎(chǔ),本文介紹JavaScript中的Mixin介紹的非常詳細(xì),需要的小伙伴可以參考閱讀一下
    2023-04-04
  • js中的面向?qū)ο笾畬ο蟪R妱?chuàng)建方法詳解

    js中的面向?qū)ο笾畬ο蟪R妱?chuàng)建方法詳解

    這篇文章主要介紹了js中的面向?qū)ο笾畬ο蟪R妱?chuàng)建方法,結(jié)合實例形式較為詳細(xì)的分析了JavaScript創(chuàng)建對象的四種常用方式,需要的朋友可以參考下
    2019-12-12
  • JS合并兩個數(shù)組的3種方法詳解

    JS合并兩個數(shù)組的3種方法詳解

    這篇文章主要介紹了JS合并兩個數(shù)組的3種方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • JavaScript使用原型和原型鏈實現(xiàn)對象繼承的方法詳解

    JavaScript使用原型和原型鏈實現(xiàn)對象繼承的方法詳解

    這篇文章主要介紹了JavaScript使用原型和原型鏈實現(xiàn)對象繼承的方法,簡單講述了javascript原型與原型鏈的原理,并結(jié)合實例形式詳細(xì)分析了javascript中對象繼承的常見實現(xiàn)技巧,需要的朋友可以參考下
    2017-04-04
  • 淺談javascript中call()、apply()、bind()的用法

    淺談javascript中call()、apply()、bind()的用法

    一直對Javascript中的apply/call/bind的用法很模糊,恰好看到了這篇文章。對三者之間的區(qū)別與聯(lián)系算是有了比較清晰的認(rèn)識。這里記錄下來,分享給大家。
    2015-04-04
  • 微信小程序登錄方法之授權(quán)登陸及獲取微信用戶手機號

    微信小程序登錄方法之授權(quán)登陸及獲取微信用戶手機號

    最近改了一個公司項目,新增加了一個獲取用戶手機號功能,里面用到了關(guān)于獲取用戶信息和用戶手機號的功能,下面這篇文章主要給大家介紹了關(guān)于微信小程序登錄方法之授權(quán)登陸及獲取微信用戶手機號的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • 基于JS實現(xiàn)省市聯(lián)動效果代碼分享

    基于JS實現(xiàn)省市聯(lián)動效果代碼分享

    這篇文章主要介紹了基于JS實現(xiàn)省市聯(lián)動效果代碼的相關(guān)資料,非常實用,在日常項目開發(fā)過程中經(jīng)常遇到此需求,下面小編給大家分享實現(xiàn)代碼,需要的朋友可以參考下
    2016-06-06
  • 使用BootStrap實現(xiàn)懸浮窗口的效果

    使用BootStrap實現(xiàn)懸浮窗口的效果

    本文給大家分享使用BootStrap實現(xiàn)懸浮窗口的效果,神奇的 bootstrap就自帶了這個功能。所以就用bootstrap的popover插件做了,效果還不錯,感興趣的朋友參考下吧
    2016-12-12

最新評論