当前位置: 首页 > news >正文

小程序点击菜单栏实现样式动态切换

小程序点击菜单栏背景样式动态切换

前言:今天做一个小程序项目,要做一个菜单栏动态切换的功能,因为这种需求很常见,这次干脆记录一下,帮助别人的同时,自己下次也可以直接照搬使用。

效果截图如下:

在这里插入图片描述

就是点击图片上的 商品类型的子菜单 和 排序方式的子菜单的时候 能够实现切换。

wxml代码:
<view class="tabs"><view class="tab_title">商品类型:</view><view class="tab"><view class="tab_item {{currentIndex === index ? 'active' : ''}}" wx:for="{{leixing}}"wx:key="*this"bind:tap="changeLeixing" data-index="{{index}}">{{item}}</view></view>
</view><view class="tabs"><view class="tab_title">排序方式:</view><view class="tab"><view class="tab_item {{currentIndex2 === index ? 'active' : ''}}" wx:for="{{paixu}}"wx:key="*this"bind:tap="changePaixu" data-index="{{index}}">{{item}}</view></view>
</view>
wxss代码:
 .tabs {width: 690rpx;margin-top: 20rpx;
}.tabs .tab_title {margin-left: 20rpx;
}.tabs .tab {display: flex;align-items: center;width: 100%;margin-left: 10rpx;margin-top: 15rpx;
}.tabs .tab .tab_item {display: flex;justify-content: center;align-items: center;padding: 10rpx 20rpx;border-radius: 20rpx;margin: 0rpx  10rpx;
}.tabs .tab .active {background-color: #EBB8B6;color: #ffffff;
}
*如果你使用的是less 就复制下面这段
  .tabs{width: 690rpx;margin-top: 20rpx;.tab_title{margin-left: 20rpx;}.tab{display: flex;align-items: center;width: 100%;margin-left: 10rpx;margin-top: 15rpx;.tab_item{display: flex;justify-content: center;align-items: center;padding: 10rpx 20rpx;border-radius: 20rpx;margin: 0rpx  10rpx;}.active{background-color: #EBB8B6;color: #ffffff;}}}
js对应的代码
**首先是小程序js中data里面的变量:**data: {currentIndex:0,  // 类型的索引currentIndex2:0,  // 排序的索引leixing:["全部","热销","新品"],paixu:["默认","价格↑","价格↓","销量"],},**两个菜单切换的点击函数**(函数名可以自己随便取,但是wxml里面的点击的绑定事件的函数名也要跟着换)// 切换类型changeLeixing(e){console.log(e.currentTarget.dataset.index);this.setData({currentIndex:e.currentTarget.dataset.index});},// 切换排序方式changePaixu(e){console.log(e.currentTarget.dataset.index);this.setData({currentIndex2:e.currentTarget.dataset.index});},

结束语:只要每天有收获,不论多少,那就是进步,加油!!!

http://www.dtcms.com/a/316450.html

相关文章:

  • 对于包含大量文件的程序的便捷makefile操作
  • RK3568 Linux驱动学习——字符设备驱动开发
  • windows内核研究(软件调试-内存断点)
  • 永磁同步电机无速度算法--具有电流测量误差鲁棒性的永磁同步电机无传感器控制的自适应广义复矢量观测器
  • 二叉树算法
  • 02-算法
  • Java后端高频面试题
  • EP02:【DL 第二弹】张量的索引、分片、合并以及维度调整
  • 如何选择正确的体育/电竞数据接口服务商?
  • 力扣148:排序链表
  • Android 开发中,HandlerThread、IntentService 和 AsyncTask区别对比
  • Pytorch基础入门2
  • C++面向对象编程基础:从类定义到封装机制详解
  • 【Linux网络编程】socket基础
  • 风丘助力混合动力汽车工况测试:精准采集整车信号解决方案
  • Datawhale AI夏令营 第三期 task2 稍微改进
  • P1026 [NOIP 2001 提高组] 统计单词个数
  • 计算机网络:详解路由器如何转发子网数据包
  • Java JDBC连接池深度解析与实战指南
  • SAP PP CK466
  • 解决docker load加载tar镜像报json no such file or directory的错误
  • jQuery中Ajax返回字符串处理技巧
  • Window.structuredClone() 指南
  • 基于深度学习钢铁表面缺陷检测系统(yolov8/yolov5)
  • 《算法导论》第 3 章 - 函数的增长
  • 本地配置运行https协议
  • Spring依赖注入:从原理到实践的自学指南
  • Linux 调度器函数sched_*系统调用及示例
  • 【数据结构入门】单链表和数组的OJ题(1)
  • 基于ARM+FPGA光栅数据采集卡设计