博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在 Create React App 中启用 Sass 和 Less
阅读量:6680 次
发布时间:2019-06-25

本文共 2195 字,大约阅读时间需要 7 分钟。

本文介绍了如何在 Create React App 脚手架中启用 Sass 和 Less。

前言

关于创建 create-react-app 项目请查看:

关于在 less 和 sass 如何在 create-react-app 启用 CSS Modules,请查看我的上一篇文章:


启用 Sass 语法编写 CSS

create-react-app 脚手架中已经添加了 sass-loader 的支持,所以只需要安装 node-sass 插件即可

安装 node-sass 插件

$ npm install node-sass --save# 或者# $ yarn add node-sass复制代码

用法:

编写 sass 文件:App.scss

.App {  text-align: center;  &-logo {    animation: App-logo-spin infinite 20s linear;    height: 40vmin;  }}复制代码

在 js 文件中直接使用:改写 App.js 文件

import React, { Component } from 'react';import logo from './logo.svg';import './App.scss';class App extends Component {  render() {    return (      
logo
); }}export default App;复制代码

在浏览器中查看效果

运行项目,此时在浏览器中即可查看到 logo 图片在缓慢转动。


启用 Less 语法编写 CSS

由于 create-react-app 脚手架中并没有配置关于 less 文件的解析,所以我们需要自己进行配置。需要安装的插件 lessless-loader

添加 Less 相关配置

  • 在命令行运行 npm run eject 命令

    此命令会将脚手架中隐藏的配置都展示出来,此过程不可逆

  • 运行完成之后,打开 config 目录下的 webpack.config.js 文件,找到 // style files regexes 注释位置,仿照其解析 sass 的规则,在下面添加两行代码

    // 添加 less 解析规则const lessRegex = /\.less$/;const lessModuleRegex = /\.module\.less$/;复制代码
  • 找到 rules 属性配置,在其中添加 less 解析配置

    // Less 解析配置{    test: lessRegex,    exclude: lessModuleRegex,    use: getStyleLoaders(        {            importLoaders: 2,            sourceMap: isEnvProduction && shouldUseSourceMap,        },        'less-loader'    ),    sideEffects: true,},{    test: lessModuleRegex,    use: getStyleLoaders(        {            importLoaders: 2,            sourceMap: isEnvProduction && shouldUseSourceMap,            modules: true,            getLocalIdent: getCSSModuleLocalIdent,        },        'less-loader'    )}复制代码
  • 此时配置完成,安装 less 和 less-loader 插件即可

    $ npm install less less-loader --save复制代码

用法

以下代码根据上面 sass 用法中的文件进行修改

编写 less 文件:App.less

.App {  text-align: center;  &-logo {    animation: App-logo-spin infinite 20s linear;    height: 40vmin;  }}复制代码

在 js 文件中直接使用:改写 App.js 文件

import React, { Component } from 'react';import logo from './logo.svg';import './App.less';class App extends Component {  render() {    return (      
logo
); }}export default App;复制代码

在浏览器中查看效果

运行项目,此时在浏览器中即可查看到 logo 图片在缓慢转动。

转载地址:http://mciao.baihongyu.com/

你可能感兴趣的文章
Scramble String
查看>>
Linux基础:CentOS安装python3.7
查看>>
Daily Scrum: 2012/11/27
查看>>
vue学习中v-if和v-show一起使用的问题
查看>>
获取一个月前的当前时间
查看>>
第三期 预测——1.简介
查看>>
behavior planning——12.example cost funtion -lane change penalty
查看>>
基于 Spring + Atomikos + Mybatis的多数据源配置demo
查看>>
随笔-刚毕业找工作的点滴(程序员)
查看>>
利用poi3.8中SXSSFWorkbook实现大数据量导出excel
查看>>
day34-1 面向对象概述
查看>>
GCD之dispatch queue
查看>>
【Oracle】-初识PL/SQL
查看>>
黄聪:超实用的PHPExcel[导入][导出]实现方法总结
查看>>
模板变量,过滤器和静态文件引入
查看>>
Oracle 中的 Schema
查看>>
Web APi之认证(Authentication)两种实现方式后续【三】(十五)
查看>>
一条语句简单解决“每个Y的最新X”的SQL经典问题
查看>>
(转)链接服务器——获取EXCEL数据
查看>>
Go数组
查看>>