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

詳解小程序如何動態(tài)綁定點擊的執(zhí)行方法

 更新時間:2019年11月26日 11:24:03   作者:KyleBing  
這篇文章主要介紹了詳解小程序如何動態(tài)綁定點擊的執(zhí)行方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

需求

一個商城的個人中心頁里,有很多用戶操作按鈕:我的訂單,我的提現,我的送貨等等,每個圖標在點擊的時候,可能是跳轉頁面的,也可能是執(zhí)行當頁方法的。

目前需要寫一個通用的方法來實現這個功能,菜單的數據結構是一樣的。

解決

菜單數據結構

title: 菜單名
iconUrl: 圖標url
type: page - 跳轉頁面 或者 method - 執(zhí)行方法
url: 點擊時跳轉的鏈接或執(zhí)行方法
badge: 圖標上顯示的未讀信息數

// 營銷工具菜單組
menuListSell: [
 {id: 0, title: '開團海報', type: 'page', url: '/pages/userCenter/poster/poster' ,iconUrl: '/assets/mine/poster.png', badge: 0},
 {id: 1, title: '優(yōu)惠券包', type: 'method', url: 'showDeveloping' ,iconUrl: '/assets/mine/coupon.png', badge: 4},
 {id: 2, title: '優(yōu)惠活動', type: 'method', url: 'showDiscountActivity' ,iconUrl: '/assets/mine/gift.png', badge: 0},
],

頁面結構是這樣的

<view class="section-icons">
  <view wx:for="{{menuListNormal}}"
     wx:key="{{item.id}}"
     data-index="{{item.id}}"
     data-type="{{item.type}}"
     data-url="{{item.url}}"
     class="section-icons-item"
     bindtap="switchMenu" >
    <view class="icon">
      <image src="{{item.iconUrl}}" mode="aspectFit"></image>
      <view wx:if="{{item.badge > 0}}" class="badge">{{item.badge}}</view>
    </view>
    <text>{{item.title}}</text>
  </view>
</view>

每個圖標菜單在點擊的時候,都會執(zhí)行 switchMenu 這個方法,獲取標簽上的 url、type, 再通過 type 值判斷跳轉頁面還是執(zhí)行方法,如果 type === 'page' 就跳轉鏈接為 url 的頁面,如果 type !== 'page' 就執(zhí)行當頁名為 url 的方法。當然,這個方法需要事先在當前頁面中已經寫好。

重要 主要是如何執(zhí)行名為 url 的方法:因為要執(zhí)行的 url 方法是 this 的一個對象,所以可以直接使用 this['對象字符串']() 來執(zhí)行這個方法, this['對象字符串'] 定位到了這個方法的引用,再加上 () 就可以執(zhí)行這個方法,如下:

 // 菜單點擊
 switchMenu(e){
  // 獲取標簽上的數據
  let pageUrl = e.currentTarget.dataset.url;
  let type = e.currentTarget.dataset.type;
  if (type === 'page'){ // 跳轉頁面時
   wx.navigateTo({
    url: pageUrl
   })
  } else { // 調用方法時
   this[pageUrl]()
  }
 },

結果

這位,就可以實現頁面跳轉和方法執(zhí)行了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • JavaScript實現動態(tài)高度過渡的3種方式總結

    JavaScript實現動態(tài)高度過渡的3種方式總結

    這篇文章主要為大家詳細介紹了JavaScript實現動態(tài)高度過渡的3種方式,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-01-01
  • 詳解如何利用chatgpt保護您的js代碼

    詳解如何利用chatgpt保護您的js代碼

    這篇文章主要為大家介紹了如何利用chatgpt保護您的js代碼詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Whatever:hover 無需javascript讓IE支持豐富偽類

    Whatever:hover 無需javascript讓IE支持豐富偽類

    絕大部分現代瀏覽器支持 css 中的 :hover 偽類選擇器,可以用于所有 html 元素。
    2010-06-06
  • 探討跨域請求資源的幾種方式(總結)

    探討跨域請求資源的幾種方式(總結)

    這篇文章主要介紹了探討跨域請求資源的幾種方式(總結),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • json屬性名為什么要雙引號(個人猜測)

    json屬性名為什么要雙引號(個人猜測)

    json屬性名為什么要雙引號?更加規(guī)范,利于解析、避免class等關鍵字引起的不兼容問題,需要的朋友可以參考下
    2014-07-07
  • Javascript的一種模塊模式

    Javascript的一種模塊模式

    全局變量是魔鬼。在YUI中,我們僅用兩個全局變量:YAHOO和YAHOO_config。YUI的一切都是使用YAHOO對象級的成員或這個成員作用域內的變量。我們建議在你的應用程序也使用類似的規(guī)則。
    2010-09-09
  • CodeMirror2 IE7/IE8 下面未知運行時錯誤的解決方法

    CodeMirror2 IE7/IE8 下面未知運行時錯誤的解決方法

    最近用CodeMirror2作后臺的模板編輯器,在IE9、Firefox下面沒有問題。到了IE7、IE8下面,textarea里面的代碼就顯示不出來了。搜索了好多,終于找到原因
    2012-03-03
  • 微信小程序scroll-x失效的完美解決方法

    微信小程序scroll-x失效的完美解決方法

    在微信小程序的文檔中,使用scroll-view標簽,然后給它設置一個scroll-x就可以實現元素,橫向排列,可以左右滑動,但是在實際開發(fā)中會遇到各種問題,下面小編給大家?guī)砹宋⑿判〕绦騭croll-x失效的完美解決方法,需要的朋友可以參考下
    2018-07-07
  • 原生js添加一個或多個類名的方法分析

    原生js添加一個或多個類名的方法分析

    這篇文章主要介紹了原生js添加一個或多個類名的方法,結合實例形式分析了javascript針對頁面元素屬性動態(tài)操作相關實現技巧,需要的朋友可以參考下
    2019-07-07
  • 不用MOUSEMOVE也能滑動啊

    不用MOUSEMOVE也能滑動啊

    不用MOUSEMOVE也能滑動啊...
    2007-05-05

最新評論