React - 组件样式模块化

news2024/11/24 23:08:23

React - 组件样式模块化

  • 一. 存在的问题
  • 二. 解决样式冲突,组件样式模块化

当多个组件使用相同类名时,设置的css样式会存在冲突渲染。

一. 存在的问题

例如有Page1Page2两个组件,在 Page1 组件引入了css样式,Page2 组件未引入。

组件层级:
在这里插入图片描述

Page1/index.jsx

import React from "react";
// 引入 css 样式
import "./index.css";
export default function Page1() {
  return <div className="text">Page1</div>;
}

Page1/index.css

.text {
  color: red;
}

Page2/index.jsx

import React from "react";

export default function Page2() {
  return <div className="text">Page2</div>;
}

src/App.js

import "reset-css";
import "@/App.css";
import Page1 from "./components/Page1";
import Page2 from "./components/Page2";

function App() {
  return (
    <div className="App">
      <Page1 />
      <Page2 />
    </div>
  );
}

export default App;

理想效果:Page1组件的字体显示红色,Page2组件的字体正常显示为默认黑色。
实际效果:Page1组件、Page2组件的字体都显示为红色。

页面效果:
在这里插入图片描述

二. 解决样式冲突,组件样式模块化

css样式文件后缀改为.module.css,引用 css样式文件 的组件中 class类名 使用对象形式命名。
修改之后,组件样式正常显示。

组件层级:
在这里插入图片描述

Page1/index.jsx 文件修改

import React from "react";
// 引入 css 样式
import style from "./index.module.css";
export default function Page1() {
  // 类名使用 style.xxx 形式
  return <div className={style.text}>Page1</div>;
}

页面效果:
在这里插入图片描述

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

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

相关文章

用Excel写个摸球模拟器玩玩

用Excel写个摸球模拟器玩玩背景代码实现相关资料背景 最近对象有个需求&#xff0c;想要帮忙写个程序&#xff0c;实现功能&#xff1a;模拟两种颜色的球&#xff0c;随机摸球N次后&#xff0c;摸到不同颜色的次数。 考虑到非程序员的环境配置问题&#xff0c;直接用Excel中的…

【配电网规划】SOCPR和基于线性离散最优潮流(OPF)模型的配电网规划( DNP )(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

深兰科技接连斩获工业设计奖!出众产品设计,助AI产品一路领先

十余年来&#xff0c;第三代AI浪潮奔腾汹涌&#xff0c;中国AI产业从全面追赶到部分实现超越。两年前&#xff0c;AI更是正式成为国家七大新基建之一。从国家战略到基础设施&#xff0c;AI正全面地从文件走向现实&#xff0c;国内人工智能的市场规模也迅速扩大。这背后&#xf…

简易聊天室代码分享 js+socket.io

先言 这我以前写的&#xff0c;这里就是单纯分享下代码&#xff0c;不算正经文章。效果如下&#xff0c;前端用一个单html文件。然后后端用node.js和socket.io&#xff0c;也是只用一个单js文件就好。这里可以看下代码的实现逻辑就好&#xff0c;因为来连数据库才能运行的。有…

HTML网页设计制作大作业 基于HTML+CSS+JavaScript实现炫丽口红网化妆品网站(10页)

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

《天天学敏捷:Scrum团队转型记》读书笔记

读书给人以快乐、给人以光彩、给人以才干。 —— 培根 基本信息 作者&#xff1a;杨蕾&#xff0c;郑江著推荐值&#xff1a;76.7%微信读书&#xff1a;天天学敏捷&#xff1a;Scrum团队转型记 收获 & 思考 阅读目标&#xff1a;提前明确目标&#xff0c;有助于提升阅读效…

营销新赛道:虚拟数字人

2021年10月Facebook改名Meta&#xff0c;引爆全球范围的元宇宙热&#xff0c;和Web 3.0相比较&#xff0c;元宇宙是一个完整的生态&#xff0c;而Web 3.0特指一种交互方式和实现方法&#xff0c;两者之间的关系类似于移动互联网与HTML 5。在元宇宙生态下&#xff0c;营销的3要素…

[附源码]Python计算机毕业设计-高校人事管理系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

Vue--》路由vue-router的使用讲解

目录 路由简述 vue-router vue-router的安装配置与使用 路由重定向 嵌套路由 嵌套路由重定向 命名路由 动态路由 路由简述 路由&#xff08;英文&#xff1a;router&#xff09;就是对应关系。单页面应用程序&#xff08;SPA&#xff09;指的是一个web网站只有唯一一个…

故障分析 | MySQL死锁案例分析

作者&#xff1a;杨奇龙 网名“北在南方”&#xff0c;资深 DBA&#xff0c;主要负责数据库架构设计和运维平台开发工作&#xff0c;擅长数据库性能调优、故障诊断。 本文来源&#xff1a;原创投稿 *爱可生开源社区出品&#xff0c;原创内容未经授权不得随意使用&#xff0c;转…

[附源码]Python计算机毕业设计高校教材网上征订系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

密码改造技术路径大比拼--“免”改造太理想,“重”改造太复杂,“易”改造是王道

随着《密码法》的颁布施行&#xff0c;密码产业进入爆发式增长期。市场用户侧、供给侧、监管侧对于“密评密改”的标准路径和部署方式共识度低&#xff0c;有唱专业的&#xff0c;有唱商业的&#xff0c;有唱便捷的&#xff0c;有唱可持续发展的&#xff0c;有唱单品的&#xf…

ANSYS Mechanical 2020 R1 版本新特性-CABLE 280单元分析索结构

导读&#xff1a;3D 缆索单元&#xff0c;可用的产品&#xff1a;Pro | Premium | Enterprise | PrepPost | Solver | AS add-on 一、CABLE 280 单元概述 CABLE280适用于分析中等至极细的缆索结构(如海底电缆)。该单元是三维三节点二次线单元。每个节点有x , y , z三个平动自…

【Anime.js】——JavaScript动画库:Anime.js

官方文档 官网定义&#xff1a; anime.js 是一个简便的JS动画库&#xff0c;用法简单而且适用范围广&#xff0c;涵盖CSS&#xff0c;DOM&#xff0c;SVG还有JS的对象&#xff0c;各种带数值属性的东西都可以动起来。 一、搭建开发环境 1、新建一个文件夹 &#xff0c;用vs c…

CpG ODN丨艾美捷ODN 1982 (synthetic)参数说明

艾美捷CpG ODN系列——ODN 1982 (synthetic)&#xff1a;具有硫代磷酸酯骨架的GpC寡脱氧核苷酸。 艾美捷CpG ODN丨ODN 1982 (synthetic)化学性质&#xff1a; 序列&#xff1a;5-tccatgagcttcctgagct-3&#xff08;小写字母表示硫代磷酸酯键&#xff09;。 MW&#xff1a;638…

Java-1214

Spring5总体学习内容 Spring基本概念IOC容器AopJdbcTemplate事务管理Spring5新特性 框架概述 Spring是轻量级的开源的JavaEE框架Spring可以解决企业应用开发的复杂性Spring有两个核心部分&#xff1a;IOC、Aop IOC&#xff1a;控制反转&#xff0c;把创建对象的过程交给Spri…

【ant-design】生态介绍和表单设计器 汇总

▒ 目录 ▒&#x1f6eb; 导读需求开发环境1️⃣ ant-design生态ant-designant-design-vueant-design-pro2️⃣ 表单设计器form-render - 阿里团队开源表单设计器&#xff0c;自家 Antd UI 框架友好form-create - 支持Vue3 及 ElementPlusUI、AntDesign、iview 框架Form Genera…

如何建立好客户信任关系?

2022年9月8日&#xff0c; 一个秋高气爽阳光明媚的日子。 正当我优雅的端起coffee&#xff0c; 专注投入早A晚C的重要一环时&#xff0c; 光头老邱按下一沓资料&#xff0c; 一并丢下经典语录&#xff1a; 这个客户对我们很重要&#xff01; emmm...... 重要的客户托付给…

Centos实现软路由

因公司需求,需要一台Centos主机,既需要做服务器,又要做路由器,要求能够对外提供有线和WIFI,还要求在学校复杂的局域网环境中,能够通过IP直接访问。带着需求去华强北找符合这样设备,华强北给的方案是爱快软路由+centos虚拟机,满足了服务器和路由器功能,但是没法使用学校…

理解频域、时域、FFT和加窗 加深对信号的认识

学习信号时域和频域、快速傅立叶变换(FFT)、加窗&#xff0c;以及如何通过这些操作来加深对信号的认识。 理解时域、频域、FFT傅立叶变换有助于理解常见的信号&#xff0c;以及如何辨别信号中的错误。尽管傅立叶变换是一个复杂的数学函数&#xff0c;但是通过一个测量信号来理…