91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解小程序如何動態綁定點擊的執行方法

發布時間:2020-10-19 00:44:41 來源:腳本之家 閱讀:110 作者:KyleBing 欄目:web開發

需求

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

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

詳解小程序如何動態綁定點擊的執行方法

解決

菜單數據結構

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

// 營銷工具菜單組
menuListSell: [
 {id: 0, title: '開團海報', type: 'page', url: '/pages/userCenter/poster/poster' ,iconUrl: '/assets/mine/poster.png', badge: 0},
 {id: 1, title: '優惠券包', type: 'method', url: 'showDeveloping' ,iconUrl: '/assets/mine/coupon.png', badge: 4},
 {id: 2, title: '優惠活動', 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>

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

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

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

結果

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

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江山市| 西青区| 葵青区| 金昌市| 会同县| 河北省| 聂拉木县| 上高县| 城固县| 铜川市| 北票市| 石景山区| 石台县| 聊城市| 临桂县| 隆德县| 阿克陶县| 平遥县| 古交市| 杭州市| 漠河县| 武城县| 通河县| 闻喜县| 昆明市| 鱼台县| 扬州市| 刚察县| 郸城县| 汉中市| 寿宁县| 万山特区| 安徽省| 来宾市| 汽车| 新蔡县| 渝中区| 慈溪市| 潜江市| 巫山县| 青田县|