React项目中使用less(2)

之前有写过yarn eject打开config文件安装使用lessReact项目中使用less,今天不使用eject,直接安装使用less

一、

安装lessless-loader插件:

yarn add less less-loader -D

二、

方法1、
安装react-app-rewiredreact-app-rewire-lessbabel-plugin-importcustomize-cra插件:

yarn add react-app-rewired -D
yarn add react-app-rewire-less -D
yarn add babel-plugin-import -D
yarn add customize-cra -D

修改package.json文件中scripts设置,改react-scriptsreact-app-rewired

"scripts": {
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test",
    "eject": "react-scripts eject"
},

在根目录下新建文件config-overrides.js
文件中添加以下代码:

const { override, fixBabelImports, addLessLoader } = require('customize-cra');

module.exports = override(
    fixBabelImports('import', {
        libraryName: 'antd',
        libraryDirectory: 'es',
        style: true
    }),
    addLessLoader({
        lessOptions: {
            javascriptEnabled: true,
            modifyVars: {}
        }
    })
);

方法2、
安装 cracocraco-less,并修改 package.json 里的 scripts 属性。

yarn add @craco/craco
yarn add craco-less
/* package.json */
"scripts": {
-   "start": "react-scripts start",
-   "build": "react-scripts build",
-   "test": "react-scripts test",
+   "start": "craco start",
+   "build": "craco build",
+   "test": "craco test",
}

项目根目录新建 craco.config.js文件:

const CracoLessPlugin = require('craco-less');

module.exports = {
  plugins: [
    {
      plugin: CracoLessPlugin,
      options: {
        lessLoaderOptions: {
          lessOptions: {
            modifyVars: { '@primary-color': '#1DA57A' },
            javascriptEnabled: true,
          },
        },
      },
    },
  ],
};

(二中方法1、2任选其一)
参考文章:

AntD 在 create-react-app 中使用
yarn和npm的区别、–save和–save-dev的区别
React项目中使用less总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值