最近在用react.js 结合蚂蚁金服的 Ant Design Mobile 做一个单页面的应用程序,遇到了一个很棘手的问题——那就是 react脚手架不支持less,看了不少优秀博主如何在react脚手架中使用less,,觉得繁琐且又不能解决实际问题,于是自己弄明白后感觉如此简单,做了这么个教程,避免新手走弯路。

声明一下我用的是微软的代码编辑软件VS code,下面的是详细的图文教程。

前期准备:

通过命令 create-react-app react-demo 创建了自己的React应用并能正常运行。

create-react-app react-demo

下面是如何让react脚手架支持less的图文教程:

step1:首先把自己创建好的项目添加到工作区,如果已添加到工作区,这一步跳过。

step2:在终端安装less 和 less-loader。下面是命令:

npm install less less-loader --save-dev

step3:点开项目文件夹,并依次找到 node_modules/react-scripts/config/webpack.config.js。如下图被红色选框选中的文件就是我们需要修改的。

step4(关键):打开这个文件并添加下面两行代码 

const lessRegex = /\.less$/;
const lessModuleRegex = /\.module\.less$/;

如图:

step5(关键):在这个文件里快捷键Ctrl+F 搜索 sassRege 并复制鼠标选中的代码。

在这个代码块后面换行,粘贴并做部分修改:
修改的地方有三处,如下图我选中的红色选框:

分别替换成 lessRegex, lessModuleRegex, 'less-loader' 并保存 如下图:

 

step6(关键):和step5一样。快捷键Ctrl+F 搜索 sassModuleRegex 复制鼠标选中的代码:

在这个代码快后面换行,粘贴并做部分修改:
修改的地方有三处,如下图我选中的红色选框:

分别替换成  lessRegex、 lessModuleRegex、 less-loader'并保存 如下图:

step6(测试):

在src下面建立一个style.less文件,代码如下:

@nice-blue:pink;
@light-blue: @nice-blue + #111;
.header { color: @light-blue; }

然后把这个 style.less 引入App.js

import './style.less';

在终端敲命令 npm start 完美的运行结果:

这样就解决了React脚手架不支持less的问题。

React脚手架less的安装的更多相关文章

  1. 【webpack系列】从零搭建 webpack4+react 脚手架(一)

    搭建一个React工程的方式有很多,官方也有自己的脚手架,如果你和我一样,喜欢刨根究底,从零开始自己一行一行代码创建一个React脚手架项目,那你就来对地方了.本教程是针对React新手,以及对web ...

  2. 用webpack4从零开始构建react脚手架

    用webpack4从零开始构建react脚手架 使用脚手架 git clone git@github.com:xiehaitao0229/react-wepack4-xht.git` `cd reac ...

  3. react脚手架搭建及配置

    npm install -g create-react-app 装完之后,生成一个新的项目,可以使用下面的命令: create-react-app my-app cd my-app/yarn star ...

  4. React脚手架创建一个React应用以及项目目录结构详解

    react脚手架 用来帮助程序员快速创建一个基于xxx库的模板项目,包含了所有需要的配置,指定好了所有的依赖,可以直接安装/编译/运行一个简单效果 react提供了一个专门用于创建react项目的脚手 ...

  5. create-react-app react脚手架

    create-react-app react脚手架 官方脚手架 1.安装 npm install -g create-react-app 2.创建项目 create-react-app react-c ...

  6. 前端笔记之React(三)使用动态样式表&antd&React脚手架&props实战

    一.使用动态样式表 1.1 LESS使用 全局安装Less npm install -g less 创建1.less文件,然后可以用lessc命令来编译这个文件: lessc 1.less 1.css ...

  7. React学习系列之(1)简单的demo(React脚手架)

    1.什么是React? React是一个一个声明式,高效且灵活的用于构建用户界面的JavaScript库.React 起源于 Facebook 的内部项目,用来架设 Instagram 的网站,并于 ...

  8. 在React旧项目中安装并使用TypeScript的实践

    前言 本篇文章默认您大概了解什么是TypeScript,主要讲解如何在React旧项目中安装并使用TypeScript. 写这个的目的主要是网上关于TypeScript这块的讲解虽然很多,但都是一些语 ...

  9. React: React脚手架

    一.简言 React开发目前已经非常流行,对于如何实现对React项目的管理和维护,React生态圈出现了大量可用的开发工具,例如Browserify.Gulp.Grunt.webpack等.其中,w ...

随机推荐

  1. Oracle判断某个表是否存在的方法

    在SQL中,我们常常使用if exists来判断一个表或某个对象是否存在,例如:  IF EXISTS (SELECT * FROM sys.tables WHERE name = 'CODE_BMD ...

  2. HyperLedger Fabric 多机部署(二)

    启动各个节点: ./orderer order节点启动方式 ./peer node start peer节点启动方式 Admin@org1.example.com 使用hyperledger fabr ...

  3. dubbo 学习(一)

    1.dubbo(服务提供方)     ---->注册给  zookeeper 2.服务消费方通过访问zookeeper直接请求服务地址 3.zookeeper能够 1:现实环境中如果服务出现中断 ...

  4. codevs1553 互斥的数

    1553 互斥的数    

  5. Java基础--面向对象以及相关知识

    一. 面向对象特征与原则 1.三大特征:封装.继承.多态. (1)封装:将客观的事物封装成抽象的类,封装代码逻辑,并通过访问控制符来控制访问的方式,从而保护程序(使用反射时,可以获取对象的私有方法和成 ...

  6. P1291-添加括号(区间dp)

    题目背景 给定一个正整数序列a(1),a(2),...,a(n),(1<=n<=20) 不改变序列中每个元素在序列中的位置,把它们相加,并用括号记每次加法所得的和,称为中间和. 例如: 给 ...

  7. 查看java版本

    我们可以使用 -version 参数来查看当前 Java 的运行版本,命令如下:java -version 以上代码实例输出结果为: java version “1.6.0_13”Java(TM) S ...

  8. python进阶02 特殊方法与特殊属性

    python进阶02 特殊方法与特殊属性 一.初始化.析构 1.初始化 # python中有很多双下划线开头且以下划线结尾的固定方法,它们会在特定的时机被触发执行,这便是特殊方法 # 在实例化的时候就 ...

  9. jQuery解决ajax请求的跨域问题

    这两天工作中频繁的遇到JS的跨域问题,都通过绕开ajax请求的方式.特地百度了一下,把跨域问题解决了.在这分析一下 首先贴上js的页面代码: <html> <head> < ...

  10. 转 db_file_multiblock_read_count

    http://www.laoxiong.net/table_scan_and_buffer_cache.html 全表扫描与buffer cache https://www.cnblogs.com/R ...