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

React里循环tab列表,并实现点击切换class

介绍

React 框架里,通过循环去显示 tab列表的标题,并且添加点击事件,当前点击的tab高亮显示。就像 vue 里 通过 v-for 显示列表并且点击时添加 activeClass 一样。

实现效果

在这里插入图片描述

代码

主要通过 map方法来实现列表的循环显示,然后添加点击事件,通过对应id的判断来添加 activeClass

// 逻辑部分
// 使用useState维护tab列表
import { useState } from "react";
// 定义列表数据
const tabList = [
  {type: 'new',tab:'最新'},
  {type: 'hot',tab:'最热'},
]
// 设置初始type
const [currentType,setCurrentType] = useState('new');
// 切换type,添加active样式
const checkType = (text) => {
   setCurrentType(text);
}
// 页面部分
<div className="sort-box">
 {tabList.map(item =>
   <span key={item.type}
     className={`type-tab ${ currentType == item.type && 'activeType'}`}
     onClick={() => checkType(item.type)}
   >{item.tab}</span>
 )}
</div>
// 样式部分
.sort-box .type-tab.activeType {
  color: #ff7f41;
}

总结

  1. React 框架的循环列表是通过 map 方法实现的,且必须要添加 key
  2. React 的类名是通过 className来添加的

http://www.kler.cn/a/441704.html

相关文章:

  • 开篇:吴恩达《机器学习》课程及免费旁听方法
  • C#与AI的共同发展
  • 线性规划:机器学习中的优化利器
  • 港口危货储存单位生产管理人员题库附答案
  • 【生产力工具】ChatGPT for Windows桌面版本安装教程
  • 【Vim Masterclass 笔记25】S10L45:Vim 多窗口的常用操作方法及相关注意事项
  • C语言学习day19:结构体/枚举/共用体/游戏结构体的逆向分析
  • Uniapp安卓端获取手机号码
  • Docker中 localhost 与 0.0.0.0 的区别详解
  • oracle client linux服务器安装教程
  • git SSL certificate problem: unable to get local issuer certificate
  • 只出现一次的数字(字节面试题 最优解)
  • OpenCV 功能函数介绍 (二)
  • awk使用详解
  • 【WPF】RenderTargetBitmap的使用
  • 如何让你的 PHP 应用坚不可摧
  • 【网络安全】掌握 Active Directory 攻防审计实操知识点
  • MaskGCT——开源文本转语音模型,可模仿任何人说话声音
  • 宝塔 搭建HOJ 配置域名 反向代理 开启https访问
  • Android使用PorterDuffXfermode的模式PorterDuff.Mode.SRC_OUT实现橡皮擦,Kotlin(1)
  • Flink-Learning全面探索流式处理的卓越框架
  • 【win10+RAGFlow+Ollama】搭建本地大模型助手(教程+源码)
  • CTFHub-ssrf
  • mysql flink cdc 实时数据抓取
  • 大模型QLoRA微调——基于Qwen2-7B的自动化病历摘要生成系统
  • OpenCV与Qt5构建卡尺找直线工具