1、创建项目:create-react-app reactProject
2、yarn eject 暴露react项目的配置项,发现文件夹下面增加了目录
config
scripts
非常重要
需要安装 less 和 less-loader
yarn add less less-loader
3、在config目录下面找到webpack.config.js
打开文件在 49行差不多的位置可以找到
// style files regexes
const cssRegex = /\.css$/;
const cssModuleRegex = /\.module\.css$/;
const sassRegex = /\.(scss|sass)$/;
const sassModuleRegex = /\.module\.(scss|sass)$/;
// 关键代码这是新增加的 开始
const lessRegex = /\.less$/;
const lessModuleRegex = /\.module\.less$/;
// 关键代码这是新增加的 结束
同理在494行找添加以下代码
其实就是搜索 sassRegex
然后根据它的格式,添加对象的文件,然后修改为less
{
test: lessRegex,
exclude: sassModuleRegex,
use: getStyleLoaders(
{
importLoaders: 2,
sourceMap: isEnvProduction && shouldUseSourceMap,
},
'less-loader'
),
// Don't consider CSS imports dead code even if the
// containing package claims to have no side effects.
// Remove this when webpack adds a warning or an error for this.
// See https://github.com/webpack/webpack/issues/6571
sideEffects: true,
},
// Adds support for CSS Modules, but using SASS
// using the extension .module.scss or .module.sass
{
test: lessModuleRegex,
use: getStyleLoaders(
{
importLoaders: 2,
sourceMap: isEnvProduction && shouldUseSourceMap,
modules: {
getLocalIdent: getCSSModuleLocalIdent,
},
},
'less-loader'
),
},