微信小程序之 catalog 切換實(shí)現(xiàn)解析
組件名稱(chēng):catalog
組件屬性:catalogData,type:String
組件描述:這是一個(gè)子組件,數(shù)據(jù)從父組件中傳遞
效果圖:
catalog 目錄為多個(gè),使用 scroll-view 容器。但是在當(dāng)前組件中,只寫(xiě)每個(gè) catalog 數(shù)據(jù)展示并實(shí)現(xiàn) catalog 切換效果,這樣會(huì)保證當(dāng)前組件的最小粒度。
分析當(dāng)前組件可能用到的屬性為:組件名稱(chēng),切換狀態(tài),未選中狀態(tài),切換點(diǎn)擊方法。
<block wx:for="{{catalogData}}" wx:key="id" wx:for-item="item" class="item"> <view class="scroll-view-item catalog-title {{curIndex == index ? 'catalog-active' : 'catalog-normal'}}" data-index="{{index}}" catchtap="goIndex">{{item.catalog}}</view> </block>
curIndex 為點(diǎn)擊當(dāng)前 catalog 時(shí)獲取的 index
index 為 catalogData 這個(gè)數(shù)組默認(rèn)的 index, 也就是 data-index 的值
goIndex 為點(diǎn)擊當(dāng)前 catalog 的方法,通過(guò)點(diǎn)擊獲取到 curIndex 的值
通過(guò)判斷當(dāng)前 curIndex 是否與數(shù)組中的 index 是否相等,如果相等,則給當(dāng)前 catalog 添加選中的樣式 catalog-active,否則添加 catalog-normal。
更新默認(rèn) curIndex 的默認(rèn)值
Component({ /** * 組件的屬性列表 */ properties: { catalogData:{ type: Array, } }, /** * 組件的初始數(shù)據(jù) */ data: { curIndex:0 }, /** * 組件的方法列表 */ methods: { goIndex(event) { let nextIndex = event.currentTarget.dataset.index; this.setData({ curIndex: nextIndex }) console.log(this.data.curIndex + '=' + nextIndex); }, } })
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
uni-app 百度語(yǔ)音識(shí)別文字并展示功能實(shí)現(xiàn)
這篇文章主要介紹了uni-app 百度語(yǔ)音識(shí)別文字并展示功能實(shí)現(xiàn),本文主要寫(xiě)的是 uniapp實(shí)現(xiàn)語(yǔ)音輸入并展示在頁(yè)面上,純前端,不涉及后端,需要的朋友可以參考下2023-12-12JavaScript實(shí)現(xiàn)樹(shù)結(jié)構(gòu)轉(zhuǎn)換的五種方法總結(jié)
在?JavaScript?編程中,將數(shù)組轉(zhuǎn)換為樹(shù)結(jié)構(gòu)是一個(gè)常見(jiàn)的需求。本篇博客將介紹五種常用的方法來(lái)實(shí)現(xiàn)數(shù)組轉(zhuǎn)樹(shù)結(jié)構(gòu),希望對(duì)大家有所幫助2023-03-03中級(jí)前端工程師必須要掌握的27個(gè)JavaScript 技巧(干貨總結(jié))
這篇文章主要介紹了中級(jí)前端工程師必須要掌握的27個(gè)JavaScript 技巧(干貨總結(jié)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-09-09JS實(shí)現(xiàn)在文本指定位置插入內(nèi)容的簡(jiǎn)單示例
下面小編就為大家分享一篇JS實(shí)現(xiàn)在文本指定位置插入內(nèi)容的簡(jiǎn)單示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12深入淺析ES6 Class 中的 super 關(guān)鍵字
本文給大家收藏整理了ES6 Class 中的 super 關(guān)鍵字,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2017-10-10