zoukankan      html  css  js  c++  java
  • react项目中使用less并修改antd主题样式

    一、react项目中使用less

    1. 安装配置

    npm i -D less less-loader

    2. 查看webpack配置

    npm run eject

    此操作不可逆,生成新的目录。

    3. 修改其中的webpack.config.js文件

     

     

     二、react 16.12.0 中修改antd的主题样式

    npm i -D babel-plugin-import

    2. 在package.json中找到对babel的配置,并进行如下修改

     "babel": {
        "presets": [
          "react-app"
        ],
        "plugins": [
            [
                "import",
                {
                    "libraryName": "antd","style": true
                }
            ]
        ]
      },

    3. 修改config/webpack.config.js文件中getStyleLoaders的定义

      const getStyleLoaders = (cssOptions, preProcessor, newOptions) => { //加参数newOptions

    并找到preProcess

    if (preProcessor) {
          loaders.push(
            {
              loader: require.resolve('resolve-url-loader'),
              options: {
                sourceMap: isEnvProduction && shouldUseSourceMap,
              },
            },
            {
              loader: require.resolve(preProcessor),
              options: {
                ...newOptions,  // 在此处把newOptions加进来
                sourceMap: true,
              },
            }
          );
        }

    修改之前对less-loader的配置

           {
                  test: lessRegex,
                  exclude: lessModuleRegex,
                  use:  getStyleLoaders(
                    {
                      importLoaders: 2,
                      sourceMap: isEnvProduction && shouldUseSourceMap,
                    },
                    'less-loader',
                    { javascriptEnabled: true, modifyVars: { "@primary-color": "#00965e", } }  // 新增
                  ),
    
                  sideEffects: true,
                },
                {
                  test: lessModuleRegex,
                  use: getStyleLoaders(
                    {
                      importLoaders: 2,
                      sourceMap: isEnvProduction && shouldUseSourceMap,
                      modules: {
                        getLocalIdent: getCSSModuleLocalIdent,
                      },
                    },
                    'less-loader',
                    { javascriptEnabled: true, modifyVars: { "@primary-color": "#00965e", } }   // 新增
                  ),
                },

    重启。完成!

  • 相关阅读:
    BZOJ 2326 数学作业
    BZOJ 4448 情报传递
    BZOJ 4443 小凸玩矩阵
    BZOJ 1852 最长不下降序列
    BZOJ 4373 算术天才⑨与等差数列
    68285
    65656556
    D. Points in rectangle
    恐怖的怪物
    再战斐波那契
  • 原文地址:https://www.cnblogs.com/ceceliahappycoding/p/12447427.html
Copyright © 2011-2022 走看看