用的css预处理器用sass,其他大同小异。

用create-react-app创建项目,执行npm run eject弹出配置文件(此操作不可逆);

配置sass,用的最新的CRA,webpack4;

webpack.config.dev.js (webpack.config.prod.js需相同配置一份):

module下的rules 中 oneOf 修改&增加

{//Exclude `js` files to keep "css" loader working as it injects

//its runtime that would otherwise processed through "file" loader.

//Also exclude `html` and `json` extensions so they get processed

//by webpacks internal loaders.

exclude: [/\.(js|jsx|mjs)$/, /\.html$/, /\.json$/, /\.sass$/, /\.scss$/],

loader: require.resolve('file-loader'),

options: {

name:'static/media/[name].[hash:8].[ext]',

},

},

{

test:/\.(scss|sass)$/,

use: ['style-loader',

{ loader:'css-loader', options: { importLoaders: 1,modules: true} },'sass-loader']//loaders: ['style-loader', 'css-loader', 'sass-loader']

}

其中modules: true 意思是开启模块化css处理

css:

.body

border: 1px solid red

.body-wrapper

border: 2px solid red

页面引入:

import indexCss from '../../css/style.scss';

使用:

className={indexCss.body}

className={indexCss["body-wrapper"]}

注意className带符号的 要用indexCss["body-wrapper"]这种形式

效果可以看到 class name都加上了编译:

有些样式不需要编译,就要:global(className)来标识这个类是全局类名,因此CSS Modules不对其类名进行转化:

结构:

import React, { Component } from "react";

import indexCss from'../../css/style.scss';

exportdefaultclass Index extends Component{

render() {return(

关于我们

name

title标题

);

}

}

样式:

.body{

border: 1px solid red;

}

.body-wrapper{

padding: 50px;

border: 2px solid red;

.name{

color: red;

}

}

:global(.title) {

color: blue

}

效果:

react手机机端css_create-react-app创建react项目 css模块化处理相关推荐

  1. react快速开始(二)-使用脚手架Create React App创建react应用

    文章目录 react快速开始(二)-Create React App入门 什么是Create React App 快速开始 使用IDE webstrom创建react项目 create react a ...

  2. react手机机端css_react工程搭建系列之---移动端适配与antd-mobile高清适配方案

    一.逻辑像素(css像素)与物理像素(设备像素) 机型 逻辑像素 物理像素 Scale Factor iphone 3GS 320 x 480 320 x 480 1x iphone 4 320 x ...

  3. create react app创建的项目运行test的时候不能解析webpack的alisa配置的问题

    使用babel插件npm install babel-plugin-module-resolver,并在.babelrc文件中加入如下: {"plugins": [["m ...

  4. 基于脚手架创建react项目

    React(一)使用脚手架创建React项目: 转自: https://www.cnblogs.com/yulingjia/p/9583244.html D:\workbench_ws>npm ...

  5. 如何创建React项目

    前言 构建React项目的几种方式: create-react-app 脚手架快速搭建 react 项目(推荐) yeoman 脚手架搭建 react 项目 webpack 一步一步构建 react ...

  6. react 组件引用组件_React Elements VS React组件

    react 组件引用组件 A few months ago I posted to Twitter what I thought was a simple question: 几个月前,我在Twitt ...

  7. React学习整理(一):React 安装

    官方提供的 CDN 地址: <script src="https://unpkg.com/react@16/umd/react.development.js">< ...

  8. web前端高级React - React从入门到进阶之初识React

    第一部分:React入门 系列文章目录 第一章:React从入门到进阶之初识React 第一章:React从入门到进阶之JSX简介 第三章:React从入门到进阶之元素渲染 第四章:React从入门到 ...

  9. 快速创建React Native App

    告诉大家一个好消息,为大家精心准备的React Native视频教程发布了,大家现可以看视频学React Native了. 快速创建React Native App 查看最新的React Native ...

  10. 利用 Create React Native App 快速创建 React Native 应用

    React Native App简介 打开React Native官方文档你会发现,在Getting Started章节下新添加一个Quick Start Tab页.Quick Start是在v0.4 ...

最新文章

  1. ubuntu 视频播放不了
  2. 团队项目第一次冲刺第三天
  3. 二极管为什么单向导电?
  4. mybatis+spring+c3p0+maven+ehcache
  5. c语言龙贝格积分法实验报告,数值作业:龙贝格算法计算积分C语言实现
  6. 窗体的布局 1124
  7. AOP和OOP的区别
  8. DPDK - mlx5 drop action 性能 patch
  9. 洛谷P5706 【深基2.例8】再分肥宅水(c ,c++混合版)
  10. 电信屏蔽了80端口,利用80端口映射解决web网站应用发布问题
  11. 工控机上位机软件的开发历程(四)
  12. 技术岗的职业规划_技术人员职业发展规划
  13. 毕业设计成品价格_一套毕业设计多少钱
  14. 互联网地图栅格比例尺(3857,4326)
  15. google的高级搜索语法说明
  16. 动态规划算法解题思路
  17. Understand Selections in D3
  18. 八种可以简单判断否属于过敏体质的表现,符合四条就是了
  19. python建立空矩阵_创建空矩阵Python
  20. Solving environment: failed with initial frozen solve. Retrying with flexible solve的解决方法

热门文章

  1. [swift 进阶]读书笔记-第八章:错误处理 C8P3 带有类型的错误
  2. 改进:js修改iOS微信浏览器的title
  3. matlab 乱七八糟求最大值~
  4. 《CLR via C#》之运行时序列化
  5. DPDK QOS1 -- Linux HQOS的框架
  6. [RK3399][Android7.1] adb remount失败
  7. S3C2440时钟电源管理
  8. SylixOS arm64 自旋锁
  9. F - 最短路 HDU - 2544(最短路的模板)
  10. 小白都能了解的聚类算法之四(谱聚类)