创建步骤和官网一直,大家可以查看官网,下面简单列举下.
创建项目
1 | npx create-react-app my-app |
eject
出配置文件
1 | npm run eject |
执行yarn eject时如果报错了,提示你要讲修改的文件提交到远程仓库
安装less
less和less-loader都要安装。less是支持less语法的,less-loader是webpack使用来编译less的。
1 | npm install less less-loader --save |
配置webpack.config.js
修改config/webpack.config.js
新增less配置变量
1 | const cssRegex = /\.css$/; |
增加module下面rule规则,可以copy cssRegex
或者sassRegex
的配置。
1 | { |
需要注意一下几个地方:
1.lessRege
x中importLoaders的值为1
当然这个是2也能使用,但是它的值是根据lessRegex变量后面正则中匹配的loader数来决定的,比如
const cssRegex = /\.css$/
只是处理css一种类型的文件,那应该就是1;const sassRegex = /\.(scss|sass)$/;
对应的是scss和sass两种类型,那就应该是2.
2.lessRegex
的use
中增加modules配置
modules可以不设置,不设置的话,less只能通过字符串名的方式使用,比如定义了一个
1
2 > .title
>
,引用时
1
2 > import './index.less'
>
,使用时:
1
2 > <div className="title"></div>
>
如果需要通过模块的方式调用,则需要把modules设置成true,就可以通过
styles.title
方式使用了。import styles from './index.less'
,使用
如果你这个都配置完npm run start
报如下错误
1 | . /node_ modules/antd/es/notification/style/index. less (. /node_ _modules/css - loader/dist/cjs.js??ref--6-one0f -7-1! ./node_ modules/postcss - loader/src?? |
less-loader
的版本改为5.0.0
然后在webpack.config.js
中的getStyleLoaders
方法中加入javascriptEnabled:true
1 | const getStyleLoaders = (cssOptions, preProcessor) => { |
最后npm run start 启动项目就可以使用less啦