react 中,使用antd layout布局中的sider 做sider的展开和收起功能

一 话不多说,先展示效果:

展开时:

收起时:

二、实现代码如下

react 文件

import React, {useState} from 'react';
import {Layout} from 'antd';
import styles from "./index.module.less"; // 这个是样式文件,实际上里面只有一个button的样式
import foldUrl from "../../../public/btn_fold2.png"; // 这里是按钮中的图片,可以替换成自己的const {Sider, Content} = Layout;
const ScalingTest = () => {const [showSider, setShowSider] = useState(true);const containerLayoutStyle: React.CSSProperties = {borderRadius: "8px",overflow: "hidden",height: "600px"};const containerSiderStyle: React.CSSProperties = {background: "red",height: "600px",fontSize: "24px",};const contentStyle: React.CSSProperties = {backgroundColor: "gainsboro",position: "relative",height: "600px",fontSize: "24px",};return <div style={{padding: 50}}><Layout style={containerLayoutStyle}><Sider style={containerSiderStyle} width={showSider ? 300 : 0}>我是侧边栏</Sider><Content style={contentStyle}>{/* 伸缩按钮 */}<button className={styles.closeButton} type={"button"}onClick={() => setShowSider(!showSider)}><img src={foldUrl} width={4} height={8} alt={"img"}style={{marginLeft: -2, transform: `rotate(${showSider ? 0 : 180}deg)`}}/></button><div>我是内容噢</div></Content></Layout></div>}export default ScalingTest;

CSS 样式文件:

// 展开、关闭按钮的样式.closeButton {position: absolute;top: 50%;transform: translate(0, -50%);left: 6px;width: 12px;height: 40px;background: linear-gradient(180deg, #EFEEF5 0%, #F0F1F5 98%);border-radius: 4px 4px 4px 4px;border: 1px solid rgba(255, 255, 255, 0.5);
}

三、题外话

        说个题外话,我自己在使用ant desgin pro +umi 那套成熟的框架时,给layout组件设置自定义高度不生效。但是如果不使用ant desgin pro +umi 那套框架时,就可以随意设置。不知道为啥!!不知道有没有大神帮忙解惑.。。。。。。

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

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

相关文章

神经网络 - 激活函数(Sigmoid 型函数)

激活函数在神经元中非常重要的。为了增强网络的表示能力和学习能力&#xff0c;激活函数需要具备以下几点性质: (1) 连续并可导(允许少数点上不可导)的非线性函数。可导的激活函数可以直接利用数值优化的方法来学习网络参数. (2) 激活函数及其导函数要尽可能的简单&#xff0…

供应链管理系统--升鲜宝门店收银系统功能解析,登录、主界面、会员 UI 设计图(一)

供应链管理系统--升鲜宝门店收银系统功能解析&#xff0c;登录、主界面 会员 UI 设计图&#xff08;一&#xff09;

从零开始的网站搭建(以照片/文本/视频信息通信网站为例)

本文面向已经有一些编程基础&#xff08;会至少一门编程语言&#xff0c;比如python&#xff09;&#xff0c;但是没有搭建过web应用的人群&#xff0c;会写得尽量细致。重点介绍流程和部署云端的步骤&#xff0c;具体javascript代码怎么写之类的&#xff0c;这里不会涉及。 搭…

三轴加速度推算姿态角的方法,理论分析和MATLAB例程

三轴加速度推算三轴姿态的方法与MATLAB代码实现 文章目录 基本原理与方法概述静态姿态解算(仅俯仰角与横滚角)扩展(融合陀螺仪与加速度计)MATLAB代码 例程四元数动态姿态解算(融合加速度与陀螺仪)注意事项与扩展基本原理与方法概述 三轴加速度计通过测量重力分量在载体坐…

2025最新Flask学习笔记(对照Django做解析)

前言&#xff1a;如果还没学Django的同学&#xff0c;可以看Django 教程 | 菜鸟教程&#xff0c;也可以忽略下文所提及的Django内容&#xff1b;另外&#xff0c;由于我们接手的项目大多都是前后端分离的项目&#xff0c;所以本文会跳过对模板的介绍&#xff0c;感兴趣的朋友可…

HTML第二节

一.列表 1.列表的简介 2.无序列表 注&#xff1a;1.ul里面只能放li&#xff0c;不能放标题和段落标签 2.li里面可以放标题和段落等内容 3.有序列表 4.定义列表 注&#xff1a;要实现上图的效果需要CSS 二.表格 1.表格介绍 注&#xff1a;1.th有额外的效果&#xff0c;可以…

SpringBoot——生成Excel文件

在Springboot以及其他的一些项目中&#xff0c;或许我们可能需要将数据查询出来进行生成Excel文件进行数据的展示&#xff0c;或者用于进行邮箱发送进行附件添加 依赖引入 此处demo使用maven依赖进行使用 <dependency><groupId>org.apache.poi</groupId>&…

【Akashic Records】《命若琴弦》

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: Akashic Records 文章目录 &#x1f4af;观后感命运的无情与生命的坚持希望的火种与人生的意义虚无与活在当下生死的辩证与享受当下结语 &#x1f4af;观后感 命若琴弦 生命的意义本不在向外的寻取&#xff0c;而在…

C#调用CANoeCLRAdapter.dll文章(一)

一、引言 CANoe 是 Vector 公司开发的一款广泛应用于汽车电子开发、测试和分析的工具。CANoe CLR Adapter 允许开发者使用 C# 等.NET 语言来扩展 CANoe 的功能&#xff0c;实现更灵活、强大的自动化测试和数据处理。本指南将详细介绍如何基于 C# 进行 CANoe CLR Adapter 的开发…

运维和AI的邂逅: 让你的 ssh/terminal 智能化

运维同学很多工作其实就是在命令行里操作服务器&#xff0c;尽管目前有很多可视化的工具&#xff0c;但是命令行(ssh 登录)依然不可或缺&#xff0c;甚至依然还占据着主要工作。这意味着运维同学需要掌握大量和服务器操作系统以及shell相关的知识&#xff0c;记住大量的命令。 …

CMake小结2(PICO为例)

1 前言 之前写过一篇cmake&#xff0c;不过很简单&#xff1a;CMake小结_cmake ${sources}-CSDN博客 构建系统现在真的太多了&#xff0c;完全学不过来的感觉&#xff0c;meson&#xff0c;gardle&#xff0c;buildroot&#xff0c; Maven。。。我是真的有点放弃治疗了。之前…

使用OpenCV实现帧间变化检测:基于轮廓的动态区域标注

在计算机视觉中&#xff0c;帧间差异检测&#xff08;frame differencing&#xff09;是一种常用的技术&#xff0c;用于检测视频流中的动态变化区域。这种方法尤其适用于监控、运动分析、目标追踪等场景。在这篇博客中&#xff0c;我们将通过分析一个基于OpenCV的简单帧间差异…

机器学习01

机器学习的基本过程如下&#xff1a; 1.数据获取 2.数据划分 3.特征提取 4.模型选择与训练 5.模型评估 6.模型调优 一、特征工程&#xff08;重点&#xff09; 0. 特征工程步骤为&#xff1a; 特征提取(如果不是像dataframe那样的数据&#xff0c;要进行特征提取&#…

每日Attention学习24——Strip Convolution Block

模块出处 [TIP 21] [link] CoANet: Connectivity Attention Network for Road Extraction From Satellite Imagery 模块名称 Strip Convolution Block (SCB) 模块作用 多方向条形特征提取 模块结构 模块特点 类PSP设计&#xff0c;采用四个并行分支提取不同维度的信息相比于…

用FileZilla Server 1.9.4给Windows Server 2025搭建FTP服务端

FileZilla Server 是一款免费的开源 FTP 和 FTPS 服务器软件&#xff0c;分为服务器版和客户端版。服务器版原本只支持Windows操作系统&#xff0c;比如笔者曾长期使用过0.9.60版&#xff0c;那时候就只支持Windows操作系统。当时我们生产环境对FTP稳定性要求较高&#xff0c;比…

es-head(es库-谷歌浏览器插件)

1.下载es-head插件压缩包&#xff0c;并解压缩 2.谷歌浏览器添加插件 3.使用

健康检查、k8s探针、Grails+Liquibase框架/health 404 Not Found排查及解决

概述 健康检查对于一个pod而言&#xff0c;其重要性不言而喻。 k8s通过探针来实现健康检查。 探针 k8s提供三种探针&#xff1a; 存活探针&#xff1a;livenessProbe就绪探针&#xff1a;readinessProbe启动探针&#xff1a;startupProbe 存活探针 存活探针决定何时重启…

5个GitHub热点开源项目!!

1.自托管 Moonlight 游戏串流服务&#xff1a;Sunshine 主语言&#xff1a;C&#xff0c;Star&#xff1a;14.4k&#xff0c;周增长&#xff1a;500 这是一个自托管的 Moonlight 游戏串流服务器端项目&#xff0c;支持所有 Moonlight 客户端。用户可以在自己电脑上搭建一个游戏…

【Linux C | 时间】localtime 的介绍、死机、死锁问题以及 localtime_r 函数的时区问题

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

122. 买卖股票的最佳时机 II 反向递推的方法

下面是将你提供的代码整理成一篇Markdown格式的博客内容&#xff1a; 股票买卖的最大利润 问题描述 给定一个整数数组 prices&#xff0c;其中 prices[i] 是股票在第 i 天的价格。你可以选择在某一天买入股票&#xff0c;并在之后的某一天卖出股票。要求计算出你能够获得的最…