微信小程序之 catalog 切换
Posted baiyygynui
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序之 catalog 切换相关的知识,希望对你有一定的参考价值。
组件名称:catalog
组件属性:catalogData,type:String
组件描述:这是一个子组件,数据从父组件中传递
效果图:
catalog 目录为多个,使用 scroll-view 容器。但是在当前组件中,只写每个 catalog 数据展示并实现 catalog 切换效果,这样会保证当前组件的最小粒度。
分析当前组件可能用到的属性为:组件名称,切换状态,未选中状态,切换点击方法。
<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 为点击当前 catalog 时获取的 index
index 为 catalogData 这个数组默认的 index, 也就是 data-index 的值
goIndex 为点击当前 catalog 的方法,通过点击获取到 curIndex 的值
通过判断当前 curIndex 是否与数组中的 index 是否相等,如果相等,则给当前 catalog 添加选中的样式 catalog-active,否则添加 catalog-normal。
更新默认 curIndex 的默认值
Component( /** * 组件的属性列表 */ properties: catalogData: type: Array, , /** * 组件的初始数据 */ data: curIndex:0 , /** * 组件的方法列表 */ methods: goIndex(event) let nextIndex = event.currentTarget.dataset.index; this.setData( curIndex: nextIndex ) console.log(this.data.curIndex + ‘=‘ + nextIndex); , )
以上是关于微信小程序之 catalog 切换的主要内容,如果未能解决你的问题,请参考以下文章