【微信小程序】实现折叠功能,折叠不同的列表

要实现微信小程序中的折叠功能,可以使用wx:ifhidden属性来控制列表的显示与隐藏。同时,可以使用icon组件来添加指示箭头。

首先,在wxml文件中创建两个List列表,使用一个变量来控制列表的显示与隐藏:

html 复制代码
<view>
  <!-- 列表1 -->
  <view class="list">
    <view class="header" bindtap="toggleList1">
      <text class="title">{{list1Title}}</text>
      <icon class="arrow" type="{{list1Hidden ? 'triangle' : 'triangle-down'}}"></icon>
    </view>
    <view wx:if="{{!list1Hidden}}" class="content">
      <!-- 列表1的内容 -->
    </view>
  </view>
  
  <!-- 列表2 -->
  <view class="list">
    <view class="header" bindtap="toggleList2">
      <text class="title">{{list2Title}}</text>
      <icon class="arrow" type="{{list2Hidden ? 'triangle' : 'triangle-down'}}"></icon>
    </view>
    <view wx:if="{{!list2Hidden}}" class="content">
      <!-- 列表2的内容 -->
    </view>
  </view>
</view>

在js文件中,添加点击事件的处理函数,用来切换列表的显示与隐藏:

javascript 复制代码
Page({
  data: {
    list1Hidden: true,
    list2Hidden: true,
    list1Title: "列表1",
    list2Title: "列表2"
  },
  toggleList1: function () {
    this.setData({
      list1Hidden: !this.data.list1Hidden
    });
  },
  toggleList2: function () {
    this.setData({
      list2Hidden: !this.data.list2Hidden
    });
  }
})

在wxss文件中,可以自定义列表的样式和指示箭头的样式:

css 复制代码
.list {
  background-color: #f5f5f5;
  margin-bottom: 10px;
}

.header {
  display: flex;
  align-items: center;
  padding: 10px;
  background-color: #fff;
}

.title {
  flex: 1;
  font-size: 16px;
}

.arrow {
  font-size: 20px;
  color: #999;
}

这样就实现了一个带折叠功能的微信小程序列表,点击列表的标题即可展开或折叠对应的内容,同时指示箭头也会根据展开或折叠状态进行变化。

相关推荐
吴声子夜歌1 天前
小程序——生命周期函数和事件处理函数
服务器·前端·小程序
hnxaoli1 天前
win10程序(十六)通达信参数清洗器
开发语言·python·小程序·股票·炒股
码云数智-大飞2 天前
自助建站系统哪个好?快速建站哪个平台好
微信小程序
吴声子夜歌2 天前
小程序——项目结构
小程序
大黄说说2 天前
微信小程序制作平台有哪些?SaaS小程序搭建平台推荐
微信小程序
Lucky小黄人3 天前
微信小程序查看备案号
微信小程序·小程序
码云数智-园园3 天前
小程序制作平台哪个好?微信小程序制作平台对比评测
微信小程序
毕设源码-郭学长3 天前
【开题答辩全过程】以 基于微信小程序的当当手办店铺为例,包含答辩的问题和答案
微信小程序·小程序
qq_24218863323 天前
微信小程序新年首页源码
微信小程序·小程序
中国胖子风清扬4 天前
GPUI 在 macOS 上编译问题排查指南
spring boot·后端·macos·小程序·rust·uni-app·web app