實現AntDesign組件的按需導入

昨天我們演示瞭如何爲React項目啓用AntDesign組件,現在回顧一下,引入方法爲:

import {DatePicker} from "antd";
import "antd/dist/antd.css"

雖然我們只用到了DatePicker組件的樣式表,但是該方法卻全局引入了所有AntDesign組件的樣式表。這樣做的結果就是將來會打包大量沒用的代碼。因此我們需要真正地實現按需導入AntDesign組件,只導入與我們用到的組件相對應的樣式表,有兩種解決方案:

手動引入

  • 導入組件:import DatePicker from "antd/lib/date-picker";
  • 導入該組件對應的css文件:import "antd/lib/date-picker/style/css"

之前全局導入樣式表的方式打包之後的index.js文件有16.2M,通過這種方式引入組件之後,打包之後的index.js文件只有8.05M了。

使用babel-plugin-import(推薦)

通過以上手動引入的方式雖然可以解決問題,但是不免有些麻煩,我們可以通過裝插件的方式輕鬆實現組件的按需導入:

  • 裝包:npm i babel-plugin-import -D
  • 配置.babelrc文件:在plugins節點下新增規則["import",{"libraryName": "antd", "style": "css"}]

然後只需從antd引入模塊即可,無需單獨引入樣式,等同於手動引入的方式。

// babel-plugin-import 會幫助你加載JS和CSS
import {DatePicker} from "antd";
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章