antd 选择文件夹_antd 组件按需引入

antd官方只给出了使用create-react-app创建但没有使用npm run eject命令项目的按需引入办法,但是出于个性化定制,实际项目中很多都会运行npm run eject命令。

npm run eject的项目如何按需引入?

按需引入,需要使用插件babel-plugin-import 来完成,步骤如下:

1.运行npm i -S babel-plugin-import

2.打开根目录的package.js文件,添加babel的配置,如下:

{

...

"browserslist":{...}

"jest": {...}

"babel": {

"presets": [

"react-app"

],

"plugins": [

[

"import",

{

"libraryName": "antd",

"style": "css"

}

]

]

},

"proxy": "http://api.xxx.cn"

...

}

如何检测是否按需引入?

App.js全局引入Antd.css

在页面引入组件并使用

import {Button} from 'antd'

xxxx

3.执行npm run build命令

4.对比打包出来的static文件夹,里面有css和js两个文件夹。按需引入以后css文件的总体大小会小很多,js代码则会增加一点。

结论

使用babel-plugin-import并配置"style": "css"会把antd的css代码按需引入,所以css的会减少很多,那为何js代码体积会增加呢?个人猜测是部分css代码被直接嵌入到js中了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值