antD使用二三事-设置主题色 && 不同组件间对antD的样式修改互不干扰

7 篇文章 0 订阅
5 篇文章 0 订阅

设置主题色

前期准备:

npm install babel-plugin-import --save-dev
npm install antd --save

1. webpack.config.theme.js中,设置主题色primary-color,并导出

module.exports={
    "primary-color": "#0ba29a",
    "link-color": "#0ba29a",
    "border-radius-base": "2px",
}

在这里插入图片描述
2. 配置webpack打包规则
在webpack.config.development.js和webpack.config.production.js中同时设置

const modifyVars = require('./webpack.config.theme.js'); //引入主题色设置文件

{
           test: /\.less$/,
           use: [{
               loader: MiniCssExtractPlugin.loader // creates style nodes from JS strings
           }, {
               loader: "css-loader",  // translates CSS into CommonJS
           }, {
               loader: "postcss-loader",
               options: {
                   config: {
                       path: path.resolve(__dirname,"./postcss.config.js")
                   }
               }
           }, {
               loader: "less-loader", // compiles Less to CSS
               options: {
					modifyVars: modifyVars, // 设置
					javascriptEnabled: true
				}
           }]
 }

在这里插入图片描述
3. 实现按需加载 .babelrc
为development和production环境分别设置libraryDirectory。

"plugins": [
                [
                    "import",
                    {
                        "libraryName": "antd",
                        "libraryDirectory": "es", // 使用主题色的配置
                        "style": true
                    },
                    "ant"
                ],
                [
                    "import",
                    {
                        "libraryName": "antd-mobile",
                        "style": "css"
                    }, 
                    "antd-mobile"
                ],
]

注:@ant-design/icons-react/es

不同组件间对antD的样式修改互不干扰

依照antD官网,对antD样式的修改应放在:global{}中,但这种修改是全局的修改,项目中ABC三个组件如果都引用了这个anD样式,那么都会受影响。
如果我们希望在A、B、C三个组件中分别对同个antD组件进行修改,怎么做呢
酱酱酱

其实很简单
只需要在className前加上ABC组件内的一个上层层级即可。
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值