微信小程序toast組件中bindchange事件觸發(fā)條件

微信小程序toast組件是一種消息提示框。例如當(dāng)文章條數(shù)全部加載出來后,用戶再次點(diǎn)擊加載更多的時(shí)候,js判斷文章條數(shù)全部加載出來后,便讓toast組件彈出提示用戶“沒有更多文章了”,效果如下圖所示:

image

代碼實(shí)現(xiàn)

index.wxml

1//點(diǎn)擊加載更多,執(zhí)行js里的loadMore函數(shù)
2<view bindtap="loadMore">加載更多</view>
3
4//hidden接收js傳遞過來的toastHidden變量值,為true,toast隱藏;為false,toast顯示
5<toast hidden="{{toastHidden}}" bindchange="toastChange">沒有更多文章了</toast>

文件路徑:pages/index/index.wxml

index.js

1 Page({ 
2  data: { 
3    //定義toastHidden變量,并將初始值設(shè)為true,此時(shí)toast組件隱藏 
4    toastHidden: true, 
5  }, 
6 
7  //點(diǎn)擊加載更多時(shí)執(zhí)行的函數(shù) 
8  loadMore: function () { 
9   var that = this
10   if (“數(shù)據(jù)條數(shù)全部加載出來后”) {
11      //if條件成立的話,將toastHidden的值設(shè)為false,此時(shí)toast組件顯示
12      that.setData({ toastHidden: false })
13    }
14  },
15
16  //這個(gè)函數(shù)將toastHidden值再次設(shè)為true,此時(shí)toast組件再次隱藏
17  toastChange: function () {
18    this.setData({ toastHidden: true })
19  }
20})

文件路徑:pages/index/index.js

toastchange函數(shù)在哪里被執(zhí)行了?

在上面的動(dòng)態(tài)效果圖中,可以看到,當(dāng)文章條數(shù)全部加載出來后,toast組件彈出提示,且?guī)酌牒笥窒?。js中toastchange函數(shù)就是讓toast組件再次消失。但是代碼中并沒看到toastchange函數(shù)在哪被調(diào)用。這就得先了解下toast組件的文檔說明。

image

從文檔中得知bindchange事件觸發(fā)條件需要hidden的值為false。toastchange函數(shù)綁定在bindchange事件上,因此toastchange函數(shù)在hidden的值為false的時(shí)候執(zhí)行。這里回看js中hidden的值設(shè)為false的地方。

image

紅色框里的代碼就是關(guān)鍵所在!

代碼分析

Step1:toast組件接收js傳遞過來的toastHidden初始值(true),此時(shí)toast隱藏。

Step2:js程序判斷文章條數(shù)全部加載出來后,將toastHidden值設(shè)為false,此時(shí)toast顯示。

Step3:hidden接到false的時(shí)候觸發(fā)bindchange事件并執(zhí)行coastchange函數(shù)(coastchange執(zhí)行前會(huì)有一個(gè)延時(shí)(duration),默認(rèn)1500毫秒),函數(shù)中將toastHidden的值設(shè)置為true,此時(shí)toast組件再次隱藏。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 每天的學(xué)習(xí)記錄,可能有的地方寫的不對,因?yàn)閯倢W(xué),以后發(fā)現(xiàn)錯(cuò)的話會(huì)回來改掉整體流程 https://develope...
    有點(diǎn)健忘閱讀 5,024評論 0 7
  • 因新工作主要負(fù)責(zé)微信小程序這一塊,最近的重心就移到這一塊,該博客是對微信小程序整體的整理歸納以及標(biāo)明一些細(xì)節(jié)點(diǎn),初...
    majun00閱讀 7,633評論 0 9
  • 1.小程序起步 (1)點(diǎn)擊https://mp.weixin.qq.com/wxopen/waregister?a...
    GXW_Lyon閱讀 3,596評論 0 0
  • 今天是什么日子 起床:5:14 就寢:22:00 天氣:晴 心情:平靜 任務(wù)清單 昨日完成的任務(wù),最重要的三件事:...
    艷艷0519閱讀 264評論 0 0
  • 自尊心強(qiáng)多見于夸獎(jiǎng)人的話,比如某某自尊心很強(qiáng),自己苦撐著干完了什么事或者正因?yàn)閺?qiáng)大的自尊心才成就了一番理想的事業(yè)等...
    奔跑的膠囊閱讀 429評論 0 0

友情鏈接更多精彩內(nèi)容