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

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

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

相关推荐
2501_915106322 小时前
iOS性能调优的系统化实践,从架构分层到多工具协同的全流程优化指南(开发者深度版)
android·ios·小程序·架构·uni-app·iphone·webview
李纲明5 小时前
Wordpress如何选择适合外贸的模板主题?
微信小程序·php
一 乐5 小时前
游戏助手|游戏攻略|基于SprinBoot+vue的游戏攻略系统小程序(源码+数据库+文档)
数据库·vue.js·spring boot·后端·游戏·小程序
说私域17 小时前
开源AI智能名片链动2+1模式S2B2C商城小程序:分享经济时代的技术赋能与模式创新
人工智能·小程序·开源
一人一程温一壶酒17 小时前
微信小程序uniapp开发附源码——图片加水印
微信小程序·uni-app·notepad++
低代码布道师18 小时前
医疗小程序05我的就诊卡
低代码·小程序
阿拉斯加的头头儿20 小时前
小程序下载图片问题处理
小程序
一 乐1 天前
校园墙|校园社区|基于Java+vue的校园墙小程序系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·小程序
vx_bscxy3221 天前
告别毕设焦虑!Python 爬虫 + Java 系统 + 数据大屏,含详细开发文档 基于微信小程序的民宿预约系统22398 (上万套实战教程,赠送源码)
java·spring boot·mysql·微信小程序·课程设计
LXA08091 天前
在 UniApp 中为小程序实现视频播放记录功能
小程序·uni-app·音视频