create-react-app中如何使用less,手把手教会less的用法

前言

我们在开发react项目中,一般都会使用脚手架来快速搭建一个项目的大体框架,其中react官方推荐的create-react-app是我在个人项目中最常用的脚手架之一,但是cra的脚手架内置只支持了sass,不支持less.那么对于习惯使用less的小伙伴只能通过我们自己的双手来完成这个任务了.下面以create-react-app中如何使用less为案例,简单介绍一下,less的使用方式.

创建create-react-app项目

Node内置npx,所以可以直接使用npx来创建项目

npx create-react-app my-app

当然如果你不喜欢这个姿势,那么需要全局安装一下create-react-app,然后再创建项目

npm create-react-app -g
create-react-app my-app

将webpack配置文件暴露出来

注意,这一步是不可逆的操作

npm run eject

安装less与less-loader

安装到本地环境就可以了,因为这个只需要在打包构建的时候用一下,生产环境是不用的

npm i less less-loader -D

安装好之后,准备工作基本就完成了

配置webpack

这个时候,我们需要去项目根目录去找config/webpack.config.js这个文件
在这里插入图片描述
然后找到这个位置,设置各种匹配规则的正则这个位置,你可以搜一下cssRegex,对就是这个位置
然后添加一行less文件的匹配规则
在这里插入图片描述

const lessRegex = \/.less$/i;

这一步做完,我们继续找到rule这个配置项,然后在rule这一项,很远很远的位置,可以看到sassModuleRegex(为了你们方便复制搜索,变量名都写在这里)
在这里插入图片描述
找到这个位置,在它的后面,添加一段这样的配置

{
	test: lessRegex,
		use: getStyleLoaders(
			{
				importLoaders: 3,
				sourceMap: isEnvProduction? shouldUseSourceMap: isEnvDevelopment,
                modules: {
                	getLocalIdent: getCSSModuleLocalIdent,
                },
            },
            'less-loader'
        ),
},

好这样就已经配置好了,每次修改webpack.config.js文件,都需要重启项目,使最新的配置生效.

验证结果

然后你就可以随便添加一个less文件,试验一下
在这里插入图片描述
在App.js里面引入style.less文件,创建一个div,类名如图所示,然后去less文件随便写段样式,保存看结果.

在这里插入图片描述
在这里插入图片描述
如果顺利的话,恭喜你已经学会如何使用less了.
但是如果像我一样,不顺利的话, 你会 oh! no! 发现报错了
在这里插入图片描述
这个是附加知识,像这种鬼报错,一般都是less-loader版本的问题,所以,换个低版本再装一遍,应该就ok了

npm i less-loader@7.3.0 -D

具体less-loader的版本信息,你可以去npm的网站去搜索less-loader,点击这里
在这里插入图片描述
你就能看到详细的版本信息了
在这里插入图片描述
刚才那个错误之前没有遇到过,好像只发生在了8.0.0版本.我自己也只试验了7.3.0与6.2.0两个版本,都没有问题.所以应该这中间的版本都没有这个问题.

所以这个是less-loader的用法.同时也是其他各种loader使用方法.大同小异,希望可以举一反三,一举拿下所有loader.对了如果对loader的test规则,以及可用方法存有疑惑,其实可以不用疑惑,你可以去npm搜索相对应的loader,在readme里面,都有详细的介绍

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值