CSS Modules In Webpack
1)从形式上看,CSS Modules 是将CSS中的选择器转换为变量,然后在DOM中引用变量来引入样式。
2)从效果上看,CSS Modules 可以将CSS选择器名字转成随机字符串,保证选择器同名也不会冲突。
3)在Webpack中使用,需要为css-loader增加modules
// webpack 1.x {
test: /\.css$/,
loader: "style-loader!css-loader?modules"
}, // webpack 2.x
{
test: /\.css$/,
use: [
{
loader: 'css-loader',
options: {
modules: true,
}
}
]
}
4)代码引入方式
// CSS
.contentTitle {
color: red;
} // React
import React from 'react';
import style from './App.css'; export default () => {
return (
<h1 className={style.contentTitle}>
Hello World
</h1>
);
};
5、生成的页面中选择器变化
// HTML
<h1 class="_3zyde4l1yATCOkgn-DBWEL">
Hello World
</h1> // CSS
._3zyde4l1yATCOkgn-DBWEL {
color: red;
}
6、node_modules内代码不处理
{
test: /\.css$/,
loader: 'style-loader!css-loader?modules',
exclude:[path.resolve(__dirname, '..', 'node_modules')]
}, {
test: /\.css$/,
loader: 'style-loader!css-loader',
include:[path.resolve(__dirname, '..', 'node_modules')]
},
https://github.com/webpack-contrib/css-loader#modules
https://www.cnblogs.com/walls/p/9153555.html
http://www.ruanyifeng.com/blog/2016/06/css_modules.html
https://segmentfault.com/a/1190000004990977
https://github.com/camsong/blog/issues/5
https://github.com/webpack-contrib/css-loader/issues/282
CSS Modules In Webpack的更多相关文章
- Webpack 2 视频教程 012 - 理解Webpack 中的 CSS 作用域与 CSS Modules
原文发表于我的技术博客 这是我免费发布的高质量超清「Webpack 2 视频教程」. Webpack 作为目前前端开发必备的框架,Webpack 发布了 2.0 版本,此视频就是基于 2.0 的版本讲 ...
- [Webpack + React] Import CSS Modules with TypeScript and webpack
If you try to use CSS Modules in TypeScript the same way you would use them in JavaScript, with webp ...
- 在Angular1.X中使用CSS Modules
在Angular1.5中,增加了一个Component方法,并且定义了组件的若干生命周期hook,在代码规范中也是推崇组件化开发,但是很遗憾的是,CSS模块化组件化的问题并没有得到解决,大部分项目的打 ...
- CSS modules 与 React中实践
最近一直在学习React,看上去蛮简单的内容,其实学习曲线还是比较高的. 目前学到css绑定的问题,看到有一篇好的文章,就转过来了. CSS 模块化的解决方案有很多,但主要有两类.一类是彻底抛弃 CS ...
- 在React中使用CSS Modules设置样式
最近,一直在看React...那真的是一个一直在学的过程啊,从配置环境webpack,到基础知识jsx,babel,es6,没有一个不是之前没有接触的.其实,我内心是兴奋的啊,毕竟,活着就是要接触一些 ...
- css模块化及CSS Modules使用详解
什么是css模块化? 为了理解css模块化思想,我们首先了解下,什么是模块化,在百度百科上的解释是,在系统的结构中,模块是可组合.分解和更换的单元.模块化是一种处理复杂系统分解成为更好的可管理模块的方 ...
- CSS Modules 与 scoped 的不一样
What ? css 的作用域表现. Css modules 是一个CSS文件,其中所有类名和动画名称默认为局部作用域. 使用JS编译原生的CSS文件,使其具备模块化的能力,该文件需要import使用 ...
- CSS Modules入门教程
为什么引入CSS Modules 或者可以这么说,CSS Modules为我们解决了什么痛点.针对以往我写网页样式的经验,具体来说可以归纳为以下几点: 全局样式冲突 过程是这样的:你现在有两个模块,分 ...
- [转] 使用babel-plugin-react-css-modules简化CSS Modules的使用
在我们的产品中,均使用CSS Modules来作为样式解决方案,大致的代码是这样的: import React from 'react'; import styles from './table.cs ...
随机推荐
- 基于E-R模型的关系型数据库设计方法
摘要 在管理信息系统开发中,数据库设计的目标是建立DBMS能识别的关系数据模型.而关系数据模型建立的基础是首先建立E-R模型,通过E-R模型才能转换为关系数据模型.如何建立E-R模型以及如何将E-R模 ...
- 跟我学ASP.NET MVC之一:开篇有益
摘要: ASP.NET MVC是微软的Web开发框架,结合了模型-视图-控制器(MVC)架构的有效性和整洁性,敏捷开发最前沿的思想和技术,以及现存的ASP.NET平台最好的部分.它是传统ASP.NET ...
- Doctype作用?标准模式与兼容模式各有什么区别?
Doctype作用?标准模式与兼容模式各有什么区别? DOCTYPE是document type(文档类型)的简写,用来告诉浏览器的解析器使用哪种HTML或XHTML规范解析页面.DOCTYPE不存在 ...
- go语言nsq源码解读八 http.go、http_server.go
这篇讲另两个文件http.go.http_server.go,这两个文件和第六讲go语言nsq源码解读六 tcp.go.tcp_server.go里的两个文件是相对应的.那两个文件用于处理tcp请求, ...
- [HAOI2008]移动玩具 状压
发现自己只会打状压了. 233333 不需要考虑是否会被挡,所以直接dp #include<cstdio> #include<cstring> #include<iost ...
- ThreadLocal的应用与实现原理
本文对ThreadLocal的分析基于JDK 8. 本文大纲 1. ThreadLocal快速上手 2. ThreadLocal应用场景 3. TheadLocal set与get方法简析 4. Th ...
- Netty实现高性能的HTTP服务器
浅谈HTTP Method 要通过netty实现HTTP服务器(或者客户端),首先你要了解HTTP协议. HTTP在客户端 - 服务器计算模型中用作请求 - 响应协议. 例如,web浏览器可以是客户端 ...
- Error Code: 1044. Access denied for user 'root'@'%' to database
mysql> SELECT host,user,password,Grant_priv,Super_priv FROM mysql.user; +--------------+--------- ...
- pods "xxx" is forbidden: SecurityContext.RunAsUser is forbidden
报错信息如下: pods "k8s-logs-cndf5" is forbidden: SecurityContext.RunAsUser is forbidden 解决方法: 需 ...
- SpringCloud学习系列之四-----配置中心(Config)使用详解
前言 本篇主要介绍的是SpringCloud中的分布式配置中心(SpringCloud Config)的相关使用教程. SpringCloud Config Config 介绍 Spring Clou ...