iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >React手写tab切换问题
  • 853
分享到

React手写tab切换问题

2024-04-02 19:04:59 853人浏览 八月长安
摘要

父文件 import React, { useState } from 'react'; // import Module1 from './Module1'; // impo

在这里插入图片描述

父文件


import React, { useState } from 'react';
// import Module1 from './Module1';
// import Module2 from './Module2';
// import Module3 from './Module3';
// import Module4 from './Module4';
import HeaderTtabs, { tagType } from '@/components/Task/Tree/Common/component/TabsContent/ListContent/HeadTabs';
import { divide } from 'lodash';

export default function (props: any) {

  const tabsList: tagType[] = [
    { name: 'xxx况' },
    { name: '培育xxxxx', disabled: false },
    { name: '关xxxx', disabled: false },
    { name: '科xxxx', disabled: false },
    { name: '人xxxx', disabled: false },
  ];
  const [checkedTag, setCheckedTag] = useState(tabsList[0])
  return (<div>
    <HeaderTtabs tabsList={tabsList} checkedTag={checkedTag} setCheckedMenu={(tab) => setCheckedTag(tab)} />
    <div className={`pt5 px20 pb20`}>
    {checkedTag.name === tabsList[0].name && <div>11</div>}
      {checkedTag.name === tabsList[1].name && <div>22</div>}
      {checkedTag.name === tabsList[2].name && <div>33</div>}
      {checkedTag.name === tabsList[3].name && <div>44</div>}
      {checkedTag.name === tabsList[4].name && <div>55</div>}
      {}
    </div>
  </div>);
}

子文件


import style from './index.sCSS';
import React from 'react';
import { message } from 'antd';

// 标签类型
export type tagType = {
  name: string, // 标签名称,唯一
  disabled?: boolean // 是否禁用
}


export default function(props: {
  tabsList: tagType[], // 标签列表
  checkedTag: tagType, // 当前选中的标签
  setCheckedMenu: (menu: tagType) => void // 标签点击回调
}) {
  const {tabsList, checkedTag, setCheckedMenu} = props
  const setCheck = (menu: tagType) => {
    if (menu.disabled) {
      message.warning('功能暂未开放');
      return
    }
    setCheckedMenu(menu)
  }
  return (<div className={`${style.tag_area} ${style.epidemic_area}`}>
    {
      tabsList.map((item) => (
        <div className={`${style.tag} ${checkedTag.name === item.name ? style.checked : ''} ${style.epidemic}`} key={item.name} onClick={() => setCheck(item)}>
          {item.name}
        </div>
      ))
    }
  </div>)
}

子文件-tab样式:

在这里插入图片描述


.tag_area {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: -20px;
  background-color: #fff;
  margin-bottom: 20px;
  @media only screen and (max-width: 768px) {
    & {
      margin-top: 10px;
    }
  }
}

.tag {
  // flex: 1;
  // margin: 0 15px;
  min-width: 130px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  height: 50px;
  color: #333;
  cursor: pointer;
  transition: .3s all;
  // box-shadow: 5px 3px 4px #999;
  font-size: 18px;
  // border-radius: 10px;
  border-radius: 6px 6px 0px 0px;
  @media only screen and (max-width: 768px) {
    & {
      font-size: 14px;
      margin: 0 5px;
      min-height: 30px;
      text-align: center;
      padding: 5px;
    }
  }

  &.checked {
    color: #fff;
    background-color: #1E9FFF;
  }
  &:hover {
    color: #fff;
    background-color: #1E9FFF;
  }
}


// 浙里防疫 四个tab样式
.epidemic_area{
  justify-content: left;
  margin: 10px 20px;
  padding:10px;
}

.epidemic{
  margin:0 10px;
  width: 200px;
  background: rgba(20, 146, 255, 0.1);
  border: 1px solid #1492FF;
  box-sizing: border-box;
  border-radius: 4px;
  height: 44px;
}

到此这篇关于React手写tab切换的文章就介绍到这了,更多相关React tab切换内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: React手写tab切换问题

本文链接: https://www.lsjlt.com/news/157096.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • React手写tab切换问题
    父文件 import React, { useState } from 'react'; // import Module1 from './Module1'; // impo...
    99+
    2024-04-02
  • React如何手写tab切换问题
    小编给大家分享一下React如何手写tab切换问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!父文件import React, { ...
    99+
    2023-06-25
  • 如何解决多个Tab页点击切换功能所导致的问题
    本篇内容主要讲解“如何解决多个Tab页点击切换功能所导致的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决多个Tab页点击切换功能所导致的问题”吧!大...
    99+
    2024-04-02
  • 手把手教你使用Vue实现一个tab栏切换功能
    随着前端技术的不断发展,Vue已成为最受欢迎的JavaScript框架之一。Vue的出现,让前端开发变得更加简单和高效。在Vue中,我们可以通过指令和组件来构建一个复杂的界面。其中,tab栏经常出现在网站的导航栏或者选项卡中,本文将介绍如何...
    99+
    2023-05-14
  • 如何解决Bootstrap开发中Tab标签页切换图表显示的问题
    小编给大家分享一下如何解决Bootstrap开发中Tab标签页切换图表显示的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前...
    99+
    2024-04-02
  • 怎么解决使用vue-router与v-if实现tab切换遇到的问题
    这篇文章主要介绍怎么解决使用vue-router与v-if实现tab切换遇到的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!先上代码,用两种方式实现的效果使用vue-router...
    99+
    2024-04-02
  • 怎么解决vue vantUI tab切换时list组件不触发load事件的问题
    小编给大家分享一下怎么解决vue vantUI tab切换时list组件不触发load事件的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!最近由于公司项目需要,用vue写了几个简单的页...
    99+
    2024-04-02
  • Linux中root切换问题:su:鉴定故障问题
    在Linux系统中,如果登录了其他账户,在其他账户中使用su切换root用户时,出现su 鉴定故障的问题时,很可能的原因是: 安装Linux时没有给root设置密码 登录口令设置后,没有及时更改root用户的密码, 用户密码已过期,需要...
    99+
    2023-09-02
    linux 运维 服务器
  • 一文解决Python切换版本问题
    目录概述其他平台1、安装Homebrew2、通过brew命令安装pyenv3、使用pyenv安装Python3.7.54、解决Python用pip命令安装速度慢,改用国内镜像5、切换...
    99+
    2024-04-02
  • 解决springboot环境切换失效的问题
    目录springboot环境切换失效概述解决SpringBoot多数据源切换无效(不切换)CSDN查到的方案有springboot环境切换失效 概述 最近在使用-Dspring.pr...
    99+
    2024-04-02
  • 解决pycharm终端 切换python版本问题
    电脑中有多个python版本,pycharm中不是想用的python版本。 1.设置电脑环境变量,看到有多个python的,肯定是设置这里。 点击编辑选项 然后把想用的python版本移到上面。例如,之前我用的是py37,现在要用py38...
    99+
    2023-09-06
    pycharm ide python
  • 解决win8 microsoft账户切换失败问题
    win8microsoft账户切换的时候经常会发现切换失败,这该如何解决呢? 工具/原料 win8系统 电脑 方法/步骤 在win8.1桌面,按“Windows+C”快捷键,在弹出菜单中点击&ld...
    99+
    2023-05-23
    win8 账户切换 win8 microsoft
  • AntDesign中使用css切换的问题及解决
    目录Ant Design使用css切换问题1、绑定一个自定义属性2、css模块化3、Ant Design主题方案4、css in js ant design中css样式覆盖...
    99+
    2024-04-02
  • 【Linux】解决切换用户出现bash-4.2$问题
    【问题描述】 linux中创建了一个xhh用户,然后使用su命令切换用户后,终端提示符显示成“bash-4.2$”而不是[root@localhost xhh]#,导致ll等命令无法执行。 [root@localhost xhh]# su ...
    99+
    2023-10-05
    linux 服务器 bash
  • 解决redis sentinel 频繁主备切换的问题
    问题描述操作redis发现原有Master变成slave,其他slave成master,切换较频繁问题分析查看redis服务器sentinel日志,发现主机频繁在凌晨左右sentin...
    99+
    2024-04-02
  • 如何解决多核浏览器切换问题
    这篇文章给大家介绍如何解决多核浏览器切换问题,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。如果你的网站只考虑兼容IE8以上,那么很多WIN7、WIN XP的用户装了360多核浏览器时,...
    99+
    2024-04-02
  • 解决spring boot环境切换失效的问题
    目录spring boot环境切换失效概述解决springboot多环境配置文件无效springboot配置文件无效spring boot环境切换失效 概述 最近在使用-Dsprin...
    99+
    2024-04-02
  • win10系统切换常见问题怎么解决
    本文小编为大家详细介绍“win10系统切换常见问题怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“win10系统切换常见问题怎么解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。win10系统切换账户、桌...
    99+
    2023-07-01
  • idea无法切换分支报错问题及解决
    目录idea无法切换分支报错解决办法idea切换分支异常异常文件所在目录情况git使用idea和命令切换分支报错处理方法:删掉这两个文件,用命令切换,结果成功总结idea无法切换分支...
    99+
    2023-05-13
    idea无法切换分支 idea分支 idea切换分支
  • unity 切换场景不销毁物体问题的解决
    在用unity进行游戏开发时我们有时需要一些物体在场景切换时不需要被销毁这时我们可以用官方给的DontDestroyOnLoad()方法, 这个方法可以让我们在场景切换时不销毁场景。...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作