React ant 点击导航条闪烁

问题 : 点击当前位置会出现闪一下的效果


另一种点击方式 , 不会闪

原因 : 没有传递具体的参数给点击事件 , 导致在函数内部无法准确判断要展示哪个子菜单,可能导致页面状态的短暂变化,出现闪烁效果
代码 :
 

  // 左侧子菜单弹出const showSonMenu = routeKey => {setDrawerVisible(true)setCollapsed(!collapsed)setTitle(!title)// 根据点击的父菜单key来筛选出对应的子菜单并更新显示内容const targetRoute = routes.find(route => route.key === routeKey)// 获取一级子菜单和二级子菜单的 key 值const openKeys = [targetRoute.key]if (targetRoute.children && targetRoute.children.length > 0) {openKeys.push(targetRoute.children[0].key) // 假设展开第一个二级子菜单}setDefaultOpenKeys(openKeys)// 更新state或其他方式来仅显示目标子菜单setSelectedRoute(targetRoute)setDrawerVisible(false)  }// 点击子菜单const onClick = e => {navigate(e.key)setCurrent(e.key)}return (    {drawerVisible ? (<div className='layoutSon'><MenuonClick={onClick}defaultOpenKeys={defaultOpenKeys}selectedKeys={[current]}mode='inline' //子菜单的样式是下拉,而不是弹出theme={Stylebg}items={selectedRoute ? [selectedRoute] : routes}/></div>) : null}// 标签区域<TabsdefaultActiveKey='1'items={routeList.slice(-1).map((item, index) => {const id = String(index)const isLastItem = index === routeList.length - 1return {label: (<div className='breadcrumb-box'>{index == 0 ? (<span className='spanIcon'><imgsrc={homeIcon}alt=''style={{width: '17px',height: '14px',PointerEvent: 'onne'}}/></span>) : null}{index == 0 ? (<spanclassName='location'onClick={() => showSonMenu(currentPosition)}>当前位置 : {stairSon}<span className='slash'>/</span></span>) : null}<spanonClick={() => {toRouter(item)}}className='breadcrumbTitle'>{activeItem?.label}</span></div>),key: id}})}
)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据挖掘】实验7:高级绘图(上)

实验7&#xff1a;高级绘图&#xff08;上&#xff09; 一&#xff1a;实验目的与要求 1&#xff1a;了解R语言中各种图形元素的添加方法&#xff0c;并能够灵活应用这些元素。 2&#xff1a;了解R语言中的各种图形函数&#xff0c;掌握常见图形的绘制方法。 二&#xff1a;实…

python-study-day1

ps&#xff1a;前言 可做毕设&#xff0c;html&#xff0c;web&#xff0c;app&#xff0c;小程序&#xff0c;bug修改&#xff0c;可加急 作者自述 作为一名前端开发工程师&#xff0c;这个大环境不好的情况下&#xff0c;我试过我前端接单子但是没有后端&#xff0c…

用java实现单链表的头插,尾插和反转

今天来练习以下单链表的一些操作&#xff0c;以下的操作都是带有头节点的链表。 定义链表节点类 定义了节点中的值&#xff0c;节点的下一个节点&#xff0c;和一些基本的方法。 public static class ListNode{int val;ListNode next;public ListNode() {}public ListNode(in…

NPM 命令备忘单

NPM 简介 Node Package Manager (NPM) 是 Node.js 环境中不可或缺的命令行工具&#xff0c;充当包管理器来安装、更新和管理 Node.js 应用程序的库、包和模块。对于每个 Node.js 开发人员来说&#xff0c;无论他们的经验水平如何&#xff0c;它都是一个关键工具。 NPM 的主要…

pom.xml显示灰色并被划线

在使用 IDEA 进行开发的过程中&#xff0c;有时候会遇到 pom.xml 显示灰色并被划线的情况&#xff0c;如下图&#xff1a; 这一般是因为该文件被 Maven 忽略导致的&#xff0c;可以进行如下操作恢复&#xff1a; 设置保存后&#xff0c;可以看到 pom.xml 恢复了正常&#xff1a…

计算机网络书籍--《网络是怎样连接的》阅读笔记

第一章 浏览器生成信息 1.1 生成HTTP请求信息 1.1.1 URL Uniform Resource Locator, 统一资源定位符。就是网址。 不同的URL能够用来判断使用哪种功能来访问相应的数据&#xff0c;比如访问Web服务器就要用”http:”&#xff0c;而访问FTP服务器用”ftp:”。 FTP&#xff…

支付系统核心逻辑 — — 状态机(JavaGolang版本)

支付系统核心逻辑 — — 状态机 代码地址&#xff1a;https://github.com/ziyifast/ziyifast-code_instruction/tree/main/state_machine_demo 1 概念&#xff1a;FSM&#xff08;有限状态机&#xff09;&#xff0c;模式之间转换 状态机&#xff0c;也叫有限状态机&#xff08…

label 的作用是什么?如何使用?

label标签来定义表单控件的关系&#xff1a;当用户选择label标签时&#xff0c;浏览器会自动将焦点转到和label标签相关的表单控件上。 使用方法1&#xff1a; <label for"mobile">Number:</label> <input type"text" id"mobile&quo…

Linux Docker挂载群晖WebDAV到本地

挂载群晖的WebDAV&#xff0c;使用群晖的WebDAV Server搭建的服务。 群晖配置了证书。 使用镜像&#xff1a; docker-webdav-client docker run -it --rm \--device /dev/fuse \--cap-add SYS_ADMIN \--security-opt "apparmorunconfined" \--env "WEBDRIVE_U…

零基础如何学习linux知识

零基础学习Linux需要一个结构化和逐步深入的学习计划。以下是一个学习方向和框架仅供参考&#xff1a; 一&#xff0c; 学习方向 1. **了解Linux基础**&#xff1a; - 理解开源概念。 - 了解Linux的历史和它的重要性。 - 认识不同的Linux发行版。 2. **命令行操作*…

基于OptiTrack跟踪系统和Turtlebot机器人的视觉SLAM定位评估

本文旨在介绍使用OptiTrack光学跟踪系统和Turtlebot机器人进行视觉SLAM定位实验的详细流程&#xff0c;包括实验平台搭建过程、数据处理过程以及SLAM估计评估方法。由于涉及知识较多&#xff0c;部分内容只给出了相关参考博文链接。 1 实验平台搭建 实验平台包括OptiTrack光学…

Golang | Leetcode Golang题解之第26题删除有序数组中的重复项

题目&#xff1a; 题解&#xff1a; func removeDuplicates(nums []int) int {n : len(nums)if n 0 {return 0}slow : 1for fast : 1; fast < n; fast {if nums[fast] ! nums[fast-1] {nums[slow] nums[fast]slow}}return slow }

前端面试问题汇总 - HTTP篇

1. 登录拦截如何实现&#xff1f; 在前端&#xff0c;可以拦截所有需要登录的请求&#xff0c;如果用户未登录或者登录过期&#xff0c;则跳转到登录页面。 2. http 缓存有哪些&#xff1f; 强缓存&#xff1a; 强缓存是指在客户端请求资源时&#xff0c;先检查本地是否存在缓存…

uniapp实现事件级防抖

背景&#xff1a; uniapp项目中所有页面跳转都会触发多次点击事件&#xff0c;导致页面排版错乱或其他问题 在utils文件夹下创建debounce.js文件 export const Debounce (fn, wait) > {let delay wait || 500let timerreturn function() {let args arguments;if (time…

CentOS 7软件安装全攻略:YUM命令详解与实战

在CentOS 7中&#xff0c;软件安装主要依赖于其强大的包管理器——YUM&#xff08;Yellowdog Updater Modified&#xff09;。YUM可以自动解决软件包之间的依赖关系&#xff0c;使得软件的安装、更新和卸载变得简单而高效。本文将详细介绍CentOS 7中软件安装的相关命令、选项和…

How to fix compile error: cannot find -lstdc++

用如下命令编译UTbot的example 程序&#xff0c; /mnt/data/maml2/utbot/2023.12.0/utbot_distr/install/bin/cmake -DCMAKE_ASM_USE_RESPONSE_FILE_FOR_INCLUDESOFF -DCMAKE_C_USE_RESPONSE_FILE_FOR_INCLUDESOFF -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_INCLUDESOFF -DCMAKE_ASM…

window10轻松使用k8s

Docker Desktop安装篇 1、win10安装 1、下载安装包 https://www.docker.com/products/docker-desktop/ 官网下载安装包 2、配置win10支持虚拟化 不勾选Hyper-V&#xff0c;容易出错 3、安装WSL配置window支持linux Windows Subsystem for Linux (WSL) 安装 Linux 子系统&am…

嵌入式sqlite3交叉编译移植

操作系统:Ubuntu20.04 下载sqlite3代码,下载版本3.30.00 wget https://www.sqlite.org/2019/sqlite-amalgamation-3300000.zip 或者https://download.csdn.net/download/benico/89127678 为什么下载amalgamation版本,不下载autoconf版本? 根据我的编译实验,同版本sql…

python爬取京东商品信息与可视化

项目介绍&#xff1a;使用python爬取京东电商拿到价格、店铺、链接、销量并做可视化 ........................................................................................................................................................... 项目介绍效果展示全部…

数据库系统概论(超详解!!!)第四节 数据库安全性

问题的提出&#xff1a; 数据库的一大特点是数据可以共享 数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享。 1.数据库的安全概述 数据库的安全性是指保护数据库以防止不合法使用所造成的数据泄露、更改或破坏 。 系统安全保护措施是否有效…