亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

微信小程序?qū)崿F(xiàn)傳遞多個參數(shù)與事件處理

 更新時間:2019年08月12日 09:35:58   作者:東邊的小山  
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)傳遞多個參數(shù)與事件處理,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

開發(fā)過程中經(jīng)常會遇到從一個頁面攜帶數(shù)據(jù)到另一個頁面的情況,所以需要知道以下信息,什么是事件?有哪些傳遞方式?如果傳遞數(shù)組呢?如果傳遞對象呢?

一、事件

什么是事件

  • 事件是視圖層到邏輯層的通訊方式
  • 事件可以將用戶的行為反饋到邏輯層進行處理
  • 事件可以綁定在組件上,當達到觸發(fā)事件,就會執(zhí)行邏輯層對應(yīng)的事件處理函數(shù)
  • 事件對象可以攜帶額外信息,如id, dataset, touches

事件處理的使用

通過在wxml中設(shè)置bindtap、catchtap等,在js中寫對應(yīng)的實現(xiàn)方法(不過這種方式目前有個缺點,點擊的時候沒有點擊效果),使用方法如下

以下摘自微信小程序官方教程,在wxml中綁定一個事件

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

然后在對應(yīng)的js中寫出事件的具體實現(xiàn)

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

事件分類

事件分為冒泡事件和非冒泡事件

  1. 冒泡事件:當一個組件上的事件被觸發(fā)后,該事件會向父節(jié)點傳遞
  2. 非冒泡事件:當一個組件上的事件被觸發(fā)后,該事件不會向父節(jié)點傳遞

一般使用場景中,例如一個列表的item中有多個點擊事件需要處理,就可以使用catchtap阻止向上冒泡

二、參數(shù)傳遞

參數(shù)傳遞有兩種方式

  1. 在wxml中使用navigator跳轉(zhuǎn)url傳遞參數(shù)
  2. 在wxml中綁定事件后,通過data-hi="參數(shù)"的方式傳遞

(1)navigator跳轉(zhuǎn)url傳遞字符串參數(shù)

代碼如下,將要傳遞到另一個頁面的字符串testId的值賦值到url中

<navigator class="test-item" url="../../pages/test/test?testId={{testData.testId}}">
  ...
</navigator>

在js頁面中onLoad方法中接收

Page({
  onLoad: function(options) {
    var testId = options.testId
    console.log(testId)
  }
})

(2)navigator跳轉(zhuǎn)url傳遞數(shù)組

如果一個頁面要將一個數(shù)組,如相冊列表傳遞到另一個頁面

<navigator class="test-item" url="../../pages/test/test?albumList={{testData.albumList}}">
  ...
</navigator>

傳遞到j(luò)s后從options中得到的是個字符串,每個圖片的url通過','分隔,所以此時還需要對其進行處理,重新組裝為數(shù)組

Page({
  data: {
     // 相冊列表數(shù)據(jù)
    albumList: [],
  },  
  onLoad: function (options) {
    var that = this;
 
    that.setData({
      albumList: options.albumList.split(",")
    });
  }
})

(3)wxml中配置data-testid傳遞字符串

這種方式一般是在wxml中綁定事件,同時設(shè)置需要傳遞的數(shù)據(jù),如果需要傳遞多個,可以寫多個data-[參數(shù)]的方式進行傳遞

<view bindtap="clickMe" data-testId={{testId}}">
  ...
</view>

在js頁面中自定義方法clickMe中接收

Page({
  clickMe: function(event) {
    var testId = event.currentTarget.dataset.testid;
    wx.navigateTo({
      url: '../../pages/test/test'
    })
  }
})

注意:通過wxml設(shè)置data-[參數(shù)名]傳遞參數(shù),[參數(shù)名]只能是小寫,不能有大寫

(4)wxml中配置data-albumlist傳遞數(shù)組

其實原理同上,上代碼

<view bindtap="clickMe" data-albumlist={{testData.albumList}}">
  ...
</view>

在js頁面中自定義方法clickMe中接收

Page({
  clickMe: function(event) {
    var albumList = event.currentTarget.dataset.albumlist.split(",");
    wx.navigateTo({
      url: '../../pages/test/test'
    })
  }
})

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

相關(guān)文章

  • js中合并對象的幾種實現(xiàn)方法

    js中合并對象的幾種實現(xiàn)方法

    "js 合并對象"是一種在JavaScript編程中常見的操作,用于將多個對象的屬性合并到一起,通常,我們會使用ES6的擴展運算符或者Object.assign()函數(shù)來實現(xiàn)這個功能,感興趣的可以了解一下
    2023-08-08
  • 基于JavaScript實現(xiàn)窗口拖動效果

    基于JavaScript實現(xiàn)窗口拖動效果

    這篇文章主要介紹了基于JavaScript實現(xiàn)窗口拖動效果的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • JavaScript自定義localStorage監(jiān)聽事件的解決方法

    JavaScript自定義localStorage監(jiān)聽事件的解決方法

    在項目開發(fā)過程中,發(fā)現(xiàn)有很多時候進行l(wèi)ocalStorage.setItem()操作設(shè)置本地存儲后,頁面必須刷新才能夠獲取到存儲數(shù)據(jù),為了解決這個問題,就必須要用到自定義localStorage監(jiān)聽事件了,所以本文給大家介紹了自定義localStorage監(jiān)聽事件,需要的朋友可以參考下
    2024-10-10
  • JS實現(xiàn)五星好評效果

    JS實現(xiàn)五星好評效果

    這篇文章主要為大家詳細介紹了JS實現(xiàn)五星好評效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 百度地圖api應(yīng)用標注地理位置信息(js版)

    百度地圖api應(yīng)用標注地理位置信息(js版)

    弄了一個百度地圖來標注地理位置信息,通過百度api來獲取地址。這地圖api是javascript版,感興趣的朋友可以了解下,或許對你有所幫助
    2013-02-02
  • JavaScript檢測上傳文件大小的方法

    JavaScript檢測上傳文件大小的方法

    這篇文章主要介紹了JavaScript檢測上傳文件大小的方法,涉及javascript針對上傳文件的相關(guān)判定技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 教你3分鐘利用原生js實現(xiàn)有進度監(jiān)聽的文件上傳預(yù)覽組件

    教你3分鐘利用原生js實現(xiàn)有進度監(jiān)聽的文件上傳預(yù)覽組件

    這篇文章主要給大家介紹了關(guān)于如何3分鐘利用原生js實現(xiàn)有進度監(jiān)聽的文件上傳預(yù)覽組件的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用js具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • JavaScript內(nèi)存泄漏的處理方式

    JavaScript內(nèi)存泄漏的處理方式

    這篇文章主要介紹了JavaScript內(nèi)存泄漏的處理方式,通過理論和實例結(jié)合的方式讓你理解的更加透徹。
    2017-11-11
  • layui-laydate時間日歷控件使用方法詳解

    layui-laydate時間日歷控件使用方法詳解

    這篇文章主要為大家詳細介紹了layui-laydate時間日歷控件的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • 超實用的JavaScript表單代碼段

    超實用的JavaScript表單代碼段

    這篇文章主要為大家分享了超實用的JavaScript表單代碼段,幫助大家更好地學(xué)習(xí)使用javascript表單操作,感興趣的小伙伴們可以參考一下
    2016-02-02

最新評論