记录一次使用ant design 中 ConfigProvider来修改样式导致样式改变的问题(Tabs嵌套Tabs)

一 说明       

         继之前的一篇文章:antd5 Tabs 标签头的文本颜色和背景颜色修改 后,发现在被修改后的Tab中继续嵌套Tabs组件,这个新的Tabs组件样式跟外层Tabs样式也是一致的,如下图所示:

二 原因

        在修改外层tabs样式时,使用到了antd5中的ConfigProvider,通过token进行样式修改。代码如下:

  <ConfigProvider
        theme={{
          components: {
            Tabs: {
              cardBg: "red"  // 设置标签背景颜色
            },
          },
        }}
      >
        <Tabs
          type="card"
          items={[{
            label: `第一页`,
            key: "1",
            children:
              <Tabs
                type="card"
                items={[{
                  label: `内部Tab1`,
                  key: "i-1",
                  children: `我是内部tab的第一页`,
                }, {
                  label: `内部Tab2`,
                  key: "i-2",
                  children: `我是内部tab的第二页`,
                }]}
              />,
          }, {
            label: `第二页`,
            key: "2",
            children: `Content of Tab Pane`,
          }]}
        />
      </ConfigProvider>

如代码所示,外层Tabs中又包含了一个内层的Tab,因此内层的Tabs样式也会被 ConfigProvider 所影响,导致内层Tab样式跟外层Tab样式一样。

三 解决办法

        要想只改变外部Tabs样式,而内部样式不变的方法,我只知道,通过ConfigProvider还原内部Tabs样式。效果如图:

测试代码代码如下:

import React from 'react';
import {Tabs, ConfigProvider} from 'antd';

const TestPage: React.FC = () => {
  return (
    <div>
      <ConfigProvider
        theme={{
          components: {
            Tabs: {
              cardBg: "red"  // 设置标签背景颜色
            },
          },
        }}
      >
        <Tabs
          type="card"
          items={[{
            label: `第一页`,
            key: "1",
            children:
              <ConfigProvider
                theme={{
                  components: {
                    Tabs: {
                      cardBg: "rgba(0, 0, 0, 0.02)"  // 还原标签背景颜色
                    },
                  },
                }}
              >
                <Tabs
                  type="card"
                  items={[{
                    label: `内部Tab1`,
                    key: "i-1",
                    children: `我是内部tab的第一页`,
                  }, {
                    label: `内部Tab2`,
                    key: "i-2",
                    children: `我是内部tab的第二页`,
                  }]}
                />,
              </ConfigProvider>

          }, {
            label: `第二页`,
            key: "2",
            children: `Content of Tab Pane`,
          }]}
        />
      </ConfigProvider>

    </div>
  )
}

export default TestPage;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/365922.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

再获殊荣!和鲸科技入选2023年中国云生态创新明星企业

1月30日&#xff0c;中国云产业联盟暨中关村云计算产业联盟&#xff08;下简称“云联盟”&#xff09;隆重推出“2023 年中国云生态创新明星企业”榜单&#xff08;下简称“榜单”&#xff09;&#xff0c;和鲸科技凭借多年深耕数据智能领域积累的卓越技术创新能力以及对云产业…

MZI 作为分光器相较于 DC 的优势

MZI 作为分光器相较于 DC 的优势 引言正文 引言 之前我们分别介绍了 MZI 和 DC&#xff0c;可参考如下文章。 MZI and MI Optical Waveguide(马赫曾德与迈克尔逊光波导) Directional Coupler&#xff08;定向耦合器&#xff09; 正文 如上图所示&#xff0c;当 symmetric MZI…

IP地址SSL证书申请全面指南

一、了解SSL证书与IP地址认证 SSL证书是通过权威数字证书颁发机构&#xff08;CA, Certificate Authority&#xff09;签发的一种电子文档&#xff0c;用于验证服务器身份并加密客户端与服务器之间的数据传输。通常情况下&#xff0c;SSL证书与域名关联&#xff0c;但也可以针…

SG2520CAA汽车用晶体振荡器

爱普生SG2520CAA是简单的封装晶体振荡器&#xff08;SPXO&#xff09;&#xff0c;具有CMOS输出&#xff0c;这款SPXO是汽车和高可靠性应用的理想选择&#xff0c;符合AEC-Q200标准&#xff0c;功耗低&#xff0c;工作电压范围为1.8 V ~ 3.3 V类型&#xff0c;宽工作温度-40℃~…

惊鸿一瞥-网络初识

&#x1f495;"Echo"&#x1f495; 作者&#xff1a;Mylvzi 文章主要内容&#xff1a;惊鸿一瞥-网络初识 一.网络的发展过程 网络的发展过程是循序渐进的,大致可以分为四个阶段: 单机时代->局域网时代->广域网时代->互联网时代 单机时代:就是每个机器之间…

哇塞,这几种Java文件读写性能差距居然这么大?

引言 这是一篇性能比较的文章&#xff0c;不分析实现原理。主要是对比Java几种常见的文件写入方式 测试代码 主要分析Stream、StreamBuffer和mmap三种方式&#xff0c;对应的大致代码如下 public static void testBasicFileIO(List<Persona> list, String path) throw…

Galah:一款功能强大的LLM驱动型OpenAI Web蜜罐系统

关于Galah Galah是一款功能强大的Web蜜罐&#xff0c;该工具由LLM大语言模型驱动&#xff0c;基于OpenAI API实现其功能。 很多传统的蜜罐系统会模拟一种包含了大量网络应用程序的网络系统&#xff0c;但这种方法非常繁琐&#xff0c;而且有其固有的局限性。Galah则不同&…

P1825 [USACO11OPEN] Corn Maze S 广度优先搜索

文章目录 题目链接题目描述解题思路代码实现总结 题目链接 链接: P1825 [USACO11OPEN] Corn Maze S 题目描述 解题思路 这道题目是一个典型的迷宫问题&#xff0c;我们需要找出从起点到终点的最短路径。解决这类问题的常用方法是使用广度优先搜索&#xff08;BFS&#xff09…

Oracle 12.2 暴力处理sysaux空间占满问题

基本环境 数据库&#xff1a;oracle 12.2 RAC 操作系统&#xff1a;unix&solaris 11.3 报错现像 今天处理别的问题查看告警日志偶然发现大量的报错&#xff0c;无法扩展SYSAUX表空间 于是登录系统&#xff0c;查看系统表空间使用情况&#xff0c;发现SYSAUX表空间用满了 …

事件分发机制:demo复现子View的点击事件不起作用

demo使用的sdk是32 自定义一个MyLayout&#xff0c;继承自LinearLayout&#xff0c;重写onInterceptTouchEvent方法&#xff0c;返回true。如下&#xff1a; package com.exp.clickdemo;import android.content.Context; import android.util.AttributeSet; import android.vi…

GSM模块的使用及注意事项

1.如何使用&#xff1f; 最近&#xff0c;我准备使用GSM模块&#xff08;SIM900A&#xff09;发送英文短信到指定号码&#xff0c;翻阅资料如下&#xff1a; 可见&#xff0c;只要给该模块按照如下步骤发送指令&#xff1a; 就可以使得模块正常工作。&#xff08;SIM900A&#…

PHP漏洞查询

CVE - Search CVE List (mitre.org) 美国国家漏洞数据库&#xff08;需要梯子&#xff09; NATIONAL VULNERABILITY DATABASE NVD - Search and Statistics (nist.gov) 基本都能查询到&#xff0c;传结果详情页里面会有一些解决方案的连接 PHP的官方网站 PHP :: Bugs :: Se…

计算机设计大赛 深度学习 python opencv 火焰检测识别

文章目录 0 前言1 基于YOLO的火焰检测与识别2 课题背景3 卷积神经网络3.1 卷积层3.2 池化层3.3 激活函数&#xff1a;3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 YOLOV54.1 网络架构图4.2 输入端4.3 基准网络4.4 Neck网络4.5 Head输出层 5 数据集准备5.1 数…

「C/C++」常见注释格式

✨博客主页何曾参静谧的博客📌文章专栏「C/C++」C/C++程序设计📚全部专栏「VS」Visual Studio「C/C++」C/C++程序设计「UG/NX」BlockUI集合「Win」Windows程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「PK」Parasolid函数说明

办公软件巨头CCED、WPS面临新考验,新款办公软件异军突起

办公软件巨头CCED、WPS的成长经历 众所周知&#xff0c;CCED和WPS在中国办公软件领域树立了两大知名品牌的地位。然而&#xff0c;它们的成功并非一朝一夕的成就&#xff0c;而是历经了长时间的发展与积淀。 在上世纪80年代末至90年代初&#xff0c;CCED作为中国大陆早期的一款…

操作系统基础:内存管理概述【上】

&#x1f308;个人主页&#xff1a;godspeed_lucip &#x1f525; 系列专栏&#xff1a;OS从基础到进阶 &#x1f3d5;️1 内存管理基础概念&#x1f3e1;1.1 总览&#x1f3e1;1.2 内存管理应有的功能&#x1f3d6;️1.2.1 内存空间的分配和回收&#x1f3d6;️1.2.2 从逻辑上…

设计模式学习笔记04(小滴课堂)

1.创建基础类&#xff1a; 调用它进行类对象的复制&#xff1a; 但是如果属性都是基本数据类型确实像这样很简单&#xff0c;但是如果属性中也包含复杂的数据类型呢&#xff1f; 再去测试一下&#xff1a; 我们发现person1和person2的list属性值的内容是同步的&#xff0c;这显…

动态微信小程序码和开发者工具解析小程序码

一、动态生成微信小程序码 1、方式一 微信官方网站&#xff0c;对已发布的小程序&#xff0c;提供了一个快捷的入口&#xff0c;输入微信小程序的page页面即可。 page页面可以通过右侧开启入口获取 也可以通过开发者工具左下角的页面地址和参数地址那里获取到 二、生成的小…

王道考研复试机试学习

机试 绪论第一章枚举和模拟1.1枚举问题简介1.2 abc1.3代码调试 绪论 1.把讲解的都做会 2.不要贪多&#xff0c;要弄懂一类题目 3.要常回顾和总结 第一章枚举和模拟 1.1枚举问题简介 列出问题所有情况&#xff0c;一个一个去试。 1.2 abc 链接&#xff1a;abc问题 设a、b、…

大模型运行成本对比:GPT-3.5/4 vs. 开源托管

在过去的几个月里&#xff0c;生成式人工智能领域出现了许多令人兴奋的新进展。 ChatGPT 于 2022 年底发布&#xff0c;席卷了人工智能世界。 作为回应&#xff0c;各行业开始研究大型语言模型以及如何将其纳入其业务中。 然而&#xff0c;在医疗保健、金融和法律行业等敏感应用…
最新文章