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

React05 样式控制 classnames工具优化类名控制

样式控制 & classnames工具优化类名控制

    • 样式控制
      • 1. 行内样式控制
      • 2. 外部样式控制
    • classnames工具优化类名控制


样式控制

1. 行内样式控制

//定义样式
const style = {color: 'red',fontSize: '30px'
}function App() {return (<div className="App">{/* 行内样式控制 */}<p style={style}>Hello BLU!</p></div>);
}
export default App;

2. 外部样式控制

  • App.js
//导入外部样式
import './index.css';function App() {const clickHandler = (name) => {alert("Hello " + name);}return (<div className="App">{/* class类名样式控制 */}<button className='bluBtn' onClick={() => clickHandler('BLU')}>Click Me</button></div>);
}
export default App;
  • index.css
.bluBtn {color: red;font-size: 20px;font-weight: 600;
}

classnames工具优化类名控制

  • npm 安装依赖
npm install classnames
  • Tab 组件
//导入外部样式
import './index.css';
//引入依赖
import classNames from 'classnames';
//引入useState
import { useState } from 'react';function Tab() {const [type, setType] = useState('');const handleTabClick = (name) => {setType(name);}return (<div><button className={classNames('bluBtn', {active: type === 'A'})} onClick={() => handleTabClick('A')}>Tab A</button><button className={classNames('bluBtn', {active: type === 'B'})} onClick={() => handleTabClick('B')}>Tab B</button></div>);}
export default Tab;
  • index.css
.bluBtn {color: red;font-size: 20px;font-weight: 600;
}
.bluBtn.active {background-color: bisque;
}
  • App.js
import Tab from "./Tab";function App() {return (<div className="App"><Tab></Tab>      </div>);
}
export default App;

相关文章:

React05 样式控制 classnames工具优化类名控制

样式控制 & classnames工具优化类名控制 样式控制1. 行内样式控制2. 外部样式控制 classnames工具优化类名控制 样式控制 1. 行内样式控制 //定义样式 const style {color: red,fontSize: 30px }function App() {return (<div className"App">{/* 行内样…...

OJ-5G网络建设

示例1 输入&#xff1a; 3 3 1 2 3 0 1 3 1 0 2 3 5 0 输出&#xff1a; 4示例2 输入&#xff1a; 3 1 1 2 5 0 输出&#xff1a; -1 示例3 输入&#xff1a; 3 3 1 2 3 0 1 3 1 0 2 3 5 1 输出&#xff1a; 1 分析&#xff1a;压缩路径 顺序&#xff1a;1 2&#xff1b;…...

Linux简介

1.Linux定义 Linux 是免费使用和自由传播的类 Unix 操作系统&#xff0c;是基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思…...

android——渐变色

1、xml的方式实现渐变色 效果图&#xff1a; xml的代码&#xff1a; <?xml version"1.0" encoding"utf-8"?> <shape xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools…...

MySQL约束管理

介绍 MySQL约束管理是指在MySQL数据库中定义和管理数据约束的过程。数据约束用于维护数据的完整性和一致性&#xff0c;确保数据在表中的存储符合特定的规则。通过约束&#xff0c;可以防止不符合要求的数据被插入或更新&#xff0c;从而保护数据库的质量。 约束管理的主要内…...

拯救者y7000p 打开XMP

拯救者y7000p 打开XMP 拯救者bios隐藏功能 第一步、开机按F2进入bios 第二步、点击more settings 第三步、依次按Fnrn再按F12保存重启 第四步、再进bios&#xff0c;点击more settings则显示更多可调制选项&#xff0c;可找到内存超频功能&#xff0c;进行xmp超频 如果第三步失…...

2024 Rust现代实用教程Iterator迭代器

文章目录 一、迭代与循环1.循环2.迭代iteration3.区别 二、Intoiterator、Iterator和Iter之间的关系1.Intolterator2.Iterator Trait3. 源码中经常出现的iter 三、获取迭代器的三种方法iter(),iter_mut()和into_iter()1.iter()方法2.iter_mut()方法3.into_iter()方法---尽量写 …...

基于SpringBoot司机信用评价的货运管理系统【附源码】

基于SpringBoot司机信用评价的货运管理系统 效果如下&#xff1a; 系统主页面 系统注册页面 司机注册页面 管理员主页面 订单评价页面 货物信息页面 个人信息页面 研究背景 随着我国物流行业的迅猛发展&#xff0c;货运管理系统的效率与安全性日益受到重视。在货运过程中&am…...

使用PostgreSQL进行高效数据管理

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 使用PostgreSQL进行高效数据管理 PostgreSQL简介 安装PostgreSQL 在Ubuntu上安装PostgreSQL 在CentOS上安装PostgreSQL 在macOS上…...

数据库条件查询排查——引号故障

一、错误代码 $where_查询职汇总员[$value头[EmpCode]]$value职员[EmpCode]; 二、正常写法 $where_查询职汇总员[EmpCode]$value职员[EmpCode]; 三、原因 前一个是变量嵌套&#xff0c;这里不需要嵌套...

Python爬虫:揭开淘宝商品描述的神秘面纱

在这个信息爆炸的时代&#xff0c;我们每天都在和时间赛跑。作为一名Python开发者&#xff0c;你是否曾梦想拥有超能力&#xff0c;能够瞬间揭开淘宝商品描述的神秘面纱&#xff1f;今天&#xff0c;就让我们一起化身为代码界的“福尔摩斯”&#xff0c;使用Python爬虫技术&…...

动态规划— 一和零

class Solution {public int findMaxForm(String[] strs, int m, int n) {int[][] dp new int[m1][n1];//dp[i][j]表示i个0和j个1时的最大子集int oneNum 0, zeroNum 0;for(String str : strs){oneNum 0;zeroNum 0;for(char c : str.toCharArray()){if(c 0){zeroNum;}els…...

【Android】SharedPreferences存储中没有 Double 类型数据存储的解决方式

项目需求 存储定位数据&#xff0c;需要保存到小数点后10位数据。 需求分析 项目需求看起来很简单&#xff0c;其实实现起来也不难&#xff0c;我们直接使用SharedPreferences 存储一下就好了&#xff0c;反正也没其他要求。 好了&#xff0c;直接使用SharedPreferences 存…...

ffmpeg:视频字幕嵌入(GPU加速)

实现方案 参考指令 ffmpeg -i input_video.mp4 -vf "subtitlessubtitles.srt" output_video.mp4 解决因文件名称复杂导致的指令执行失败问题&#xff08;引号给文件框起来&#xff09; ffmpeg -i "A.mp4" -vf "subtitlesB.srt" "c.mp4&qu…...

DCN网络进行新冠肺炎影像分类

项目源码获取方式见文章末尾! 600多个深度学习项目资料,快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【BiLSTM模型实现电力数据预测】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现mnist手写数字识别】…...

C++中的继承——第二篇

一、继承与友元 友元关系不能够继承&#xff08;就像父亲的朋友不一定是自己的朋友&#xff09; 具体实现起来就是父类的友元可以访问父类的成员&#xff0c;但是不可以访问子类的成员 二、继承与静态成员 子类的静态成员变量本质上与父类的是同一份&#xff0c;存储在静态…...

动态规划探索篇

Leetcode63——不同路径Ⅱ 题目描述&#xff1a; 给定一个 m x n 的整数数组 grid。一个机器人初始位于 左上角&#xff08;即 grid[0][0]&#xff09;。机器人尝试移动到 右下角&#xff08;即 grid[m - 1][n - 1]&#xff09;。机器人每次只能向下或者向右移动一步。 网格…...

js中多let与var

在 JavaScript 中&#xff0c;let 和 var 都用于声明变量&#xff0c;但它们有一些关键的区别。主要区别包括作用域、变量提升、可重复声明、以及在全局作用域中的行为。 1. 作用域&#xff08;Scope&#xff09; let&#xff1a;块级作用域。用 let 声明的变量只在其所在的代…...

基于人工智能的搜索和推荐系统

互联网上的搜索历史分析和用户活动是个性化推荐的基础&#xff0c;这些推荐已成为电子商务行业和在线业务的强大营销工具。随着人工智能的使用&#xff0c;在线搜索也在改进&#xff0c;因为它会根据用户的视觉偏好提出建议&#xff0c;而不是根据每个客户的需求和偏好量身定制…...

冷钱包与热钱包的差异 | 加密货币存储的安全方案

随着加密货币的普及&#xff0c;越来越多的人开始重视加密资产的安全存储问题。钱包作为存储数字资产的工具&#xff0c;主要分为冷钱包和热钱包两大类。它们在安全性、便捷性以及适用场景方面各有优劣。了解这两者的差异&#xff0c;有助于投资者根据自己的需求选择合适的钱包…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面&#xff0c;开源代码 作为一个电子罗盘模块&#xff0c;我们可以通过I2C从中获取偏航角yaw&#xff0c;相对于六轴陀螺仪的yaw&#xff0c;qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)

目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 &#xff08;1&#xff09;输入单引号 &#xff08;2&#xff09;万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...

uniapp 实现腾讯云IM群文件上传下载功能

UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中&#xff0c;群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS&#xff0c;在uniapp中实现&#xff1a; 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...

字符串哈希+KMP

P10468 兔子与兔子 #include<bits/stdc.h> using namespace std; typedef unsigned long long ull; const int N 1000010; ull a[N], pw[N]; int n; ull gethash(int l, int r){return a[r] - a[l - 1] * pw[r - l 1]; } signed main(){ios::sync_with_stdio(false), …...