React【vite使用模块化css】

文章目录


前言

一般编写组件样式的时候我们都需要做对样式的模块化,以防止组件样式间的样式污染。

在vue中有hash限制选择器

c 复制代码
.vue[as12xs4] {}

在react中有样式模块化

c 复制代码
import style from "index.module.scss";

function com {
	return <div className={style.styleName}>txt</div>
}

一、使用步骤

1.vite初始化react项目

代码如下(示例):

c 复制代码
npm init vite@latest react-pro -- --template react-ts

2. 安装sass

c 复制代码
npm i sass -D

3. 增加声明文件

在src同级目录下增加typings.d.ts

c 复制代码
declare module "*.module.scss" {
	const classes:{[key:string]:string};
	export default classes;
}

4.配置ts.config.json

c 复制代码
include:['src','./typings.d.ts']

5.使用

定义index.module.scss文件

c 复制代码
//必须要有有效属性,空白类不抛出
.root {
	color:red;
}

组件使用

c 复制代码
import style from "./index.module.scss";
function com(){
	return <div className={style.root}>red color</div>
}

二、scss文件默认支持模块化,而无需加.module

scss模块化的操作是由post-css这个插件去做的,可以自定义一个vite插件去实现,自己想要的模块化逻辑。后续作者也会编写一个对应的插件放在GitHub上

相关推荐
qq_386322691 小时前
华为网路设备学习-21 IGP路由专题-路由过滤(filter-policy)
前端·网络·学习
蓝婷儿6 小时前
前端面试每日三题 - Day 32
前端·面试·职场和发展
星空寻流年7 小时前
CSS3(BFC)
前端·microsoft·css3
九月TTS7 小时前
开源分享:TTS-Web-Vue系列:Vue3实现固定顶部与吸顶模式组件
前端·vue.js·开源
CodeCraft Studio8 小时前
数据透视表控件DHTMLX Pivot v2.1发布,新增HTML 模板、增强样式等多个功能
前端·javascript·ui·甘特图
一把年纪学编程8 小时前
【牛马技巧】word统计每一段的字数接近“字数统计”
前端·数据库·word
llc的足迹8 小时前
el-menu 折叠后小箭头不会消失
前端·javascript·vue.js
九月TTS8 小时前
TTS-Web-Vue系列:移动端侧边栏与响应式布局深度优化
前端·javascript·vue.js
Johnstons9 小时前
AnaTraf:深度解析网络性能分析(NPM)
前端·网络·安全·web安全·npm·网络流量监控·网络流量分析
whatever who cares9 小时前
CSS3 伪元素(Pseudo-elements)大全
前端·css·css3