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

要实现微信小程序中的折叠功能,可以使用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;
}

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

相关推荐
独角鲸网络安全实验室4 小时前
2026微信小程序抓包全解析:从实操落地到合规风控,解锁前端调试新范式
前端·微信小程序·小程序·抓包·系统代理绕过·https证书严格校验·进程隔离
fix一个write十个10 小时前
【uniApp开发】微信小程序 web-view 内嵌 H5 跳转支付踩坑实录
微信小程序·uni-app
互联科技报19 小时前
2026小程序店铺装修模板怎么选?小程序店铺装修教程是什么?
小程序
凡科网小帆19 小时前
右以云小程序:零基础企业的高性价比数字化落地实录
小程序
棋宣20 小时前
微信小程序onShareAppMessage 分享-生命周期函数 在vue3中 组合式函数 hooks中不生效
微信小程序·小程序
2601_9579665320 小时前
抽卡机盲盒小程序怎么做?完整功能搭建与开发要点
小程序
好赞科技1 天前
深度测评2026年精选美发预约小程序排行榜 革新预约新体验 修订
大数据·微信小程序
一颗无敌码农2 天前
多商户与多门店电商系统有什么区别?核心模式解析
微信小程序·php·用户运营·crmeb
wuyoula2 天前
全新多平台电商代付商城源码
开发语言·c++·ui·小程序·php源码
低代码布道师2 天前
微搭低代码MBA 培训管理系统实战 36——小程序端课程预约功能实现
低代码·小程序