背景
无论是在小程序还是 h5 网页,折叠菜单,手风琴是一个非常常见的效果,如今也有很多现成的 UI 组件库已经实现了这一效果的,但有时候在写原生小程序时,单单就是一个折叠菜单效果,却要引入整个 UI...* 页面的初始数据
*/
data: {
selected: [false, false, false, false, false], // // 这里表示列表项是否展开,默认初始时此数组的元素全为...this.data.selected[`${index}`],
active: index,
});
// 如果点击的不是当前展开的项,则关闭当前展开的项
// 这里就实现了点击一项...,主要利用的是css中的display:none,默认的一些子选项是隐藏的,然后列表的数据的名称以及要展示的内容放在一个数组listDatas中,随后,循环列表渲染
在列表中绑定点击事件,在元素上设置data...属性,在事件对象中就可以获取到,最终通过setData修改数据,以达到实现手风琴的效果
结语
实现这个手风琴,主要还是在怎么控制子选项的一个状态selected,通过列表的索引,然后进行控制selected