如何让CRA支持less文件

使用npx create-react-app demo --template=typescript创建出来的CRA前端项目天然是不支持less文件的,所以想要创建出来的前端项目支持less文件就必须手动配置。本文叙述了在CRA前端项目中配置less的步骤:

1. 在项目根目录,通过运行以下命令,安装 react-scripts 的最新版本:

bash 复制代码
yarn add @craco/craco craco-less --dev

2. 在项目根目录,创建 config-overrides.js 文件。

bash 复制代码
touch config-overrides.js

3. 在 config-overrides.js 中,添加以下内容:

javascript 复制代码
const CracoLessPlugin = require('craco-less');

module.exports = {
  plugins: [
    {
      plugin: CracoLessPlugin,
      options: {
        lessLoaderOptions: {
          lessOptions: {
            modifyVars: { '@primary-color': '#1DA57A' }, // 可以在此处设置LESS变量
            javascriptEnabled: true,
          },
        },
      },
    },
  ],
};

4. 在 package.json 中,将 scripts 部分中的 react-scripts 替换为 cra-scripts,如下所示:

json 复制代码
"scripts": {
  "start": "craco start",
  "build": "craco build",
  "test": "craco test",
  "eject": "craco eject"
},

5. 安装 lessless-loader,通过运行以下命令:

bash 复制代码
yarn add less less-loader --save-dev

6. 确保你的 Less 样式文件以 .less 扩展名结尾,并在你的组件中引入它们。

配置完成后,CRA 将能够解析和应用 less 样式。你可以在你的项目中使用 less 文件来定义样式,并通过导入它们到组件中使用。

相关推荐
xixixin_11 小时前
【React】为什么移除事件要写在useEffect的return里面?
前端·javascript·react.js
嘗_12 小时前
react 源码2
前端·javascript·react.js
我只会写Bug啊15 小时前
Vue文件预览终极方案:PNG/EXCEL/PDF/DOCX/OFD等10+格式一键渲染,开源即用!
前端·vue.js·pdf·excel·预览
扯蛋43817 小时前
LangChain的学习之路( 一 )
前端·langchain·mcp
Mr.Jessy17 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
午安~婉17 小时前
javaScript八股问题
开发语言·javascript·原型模式
西西学代码18 小时前
Flutter---个人信息(5)---持久化存储
java·javascript·flutter
芝麻开门-新起点18 小时前
flutter 生命周期管理:从 Widget 到 State 的完整解析
开发语言·javascript·ecmascript
ConardLi18 小时前
Easy Dataset 已经突破 11.5K Star,这次又带来多项功能更新!
前端·javascript·后端
冴羽18 小时前
10 个被严重低估的 JS 特性,直接少写 500 行代码
前端·javascript·性能优化