Skip to content

Commit b41c25a

Browse files
committed
* chore: antd icon 按需加载
1 parent 7c468f7 commit b41c25a

File tree

2 files changed

+57
-1
lines changed

2 files changed

+57
-1
lines changed

config/webpack.config.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,8 @@ module.exports = function(webpackEnv) {
306306
// Support React Native Web
307307
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
308308
'react-native': 'react-native-web',
309-
'@': paths.appSrc
309+
'@': paths.appSrc,
310+
'@ant-design/icons/lib/dist$': path.resolve(__dirname, '../src/utils/antdIcon.js') // antd icon 按需引入
310311
},
311312
plugins: [
312313
// Adds support for installing with Plug'n'Play, leading to faster installs and adding

src/utils/antdIcon.js

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
// 解决 antd icon 打包不能按需加载的问题
2+
// https://github.com/ant-design/ant-design/issues/12011
3+
4+
export { default as GithubFill } from '@ant-design/icons/lib/fill/GithubFill'
5+
export { default as GithubOutline } from '@ant-design/icons/lib/outline/GithubOutline'
6+
7+
export { default as LoadingOutline } from '@ant-design/icons/lib/outline/LoadingOutline'
8+
9+
export { default as FolderOpenOutline } from '@ant-design/icons/lib/outline/FolderOpenOutline'
10+
11+
export { default as FolderOutline } from '@ant-design/icons/lib/outline/FolderOutline'
12+
13+
export { default as DownOutline } from '@ant-design/icons/lib/outline/DownOutline'
14+
15+
export { default as DeleteOutline } from '@ant-design/icons/lib/outline/DeleteOutline'
16+
17+
export { default as InboxOutline } from '@ant-design/icons/lib/outline/InboxOutline'
18+
19+
export { default as HomeOutline } from '@ant-design/icons/lib/outline/HomeOutline'
20+
21+
export { default as SwitcherOutline } from '@ant-design/icons/lib/outline/SwitcherOutline'
22+
23+
export { default as EditOutline } from '@ant-design/icons/lib/outline/EditOutline'
24+
25+
export { default as UserOutline } from '@ant-design/icons/lib/outline/UserOutline'
26+
27+
export { default as SearchOutline } from '@ant-design/icons/lib/outline/SearchOutline'
28+
29+
export { default as MenuOutline } from '@ant-design/icons/lib/outline/MenuOutline'
30+
31+
export { default as PlusOutline } from '@ant-design/icons/lib/outline/PlusOutline'
32+
33+
export { default as QqOutline } from '@ant-design/icons/lib/outline/QqOutline'
34+
35+
export { default as ClockCircleOutline } from '@ant-design/icons/lib/outline/ClockCircleOutline'
36+
37+
export { default as CloseOutline } from '@ant-design/icons/lib/outline/CloseOutline'
38+
export { default as CheckOutline } from '@ant-design/icons/lib/outline/CheckOutline'
39+
export { default as InfoCircleOutline } from '@ant-design/icons/lib/outline/InfoCircleOutline'
40+
export { default as ExclamationCircleOutline } from '@ant-design/icons/lib/outline/ExclamationCircleOutline'
41+
export { default as QuestionOutline } from '@ant-design/icons/lib/outline/QuestionOutline'
42+
export { default as StarOutline } from '@ant-design/icons/lib/outline/StarOutline'
43+
export { default as LeftOutline } from '@ant-design/icons/lib/outline/LeftOutline'
44+
export { default as RightOutline } from '@ant-design/icons/lib/outline/RightOutline'
45+
export { default as UpOutline } from '@ant-design/icons/lib/outline/UpOutline'
46+
export { default as CaretUpOutline } from '@ant-design/icons/lib/outline/CaretUpOutline'
47+
export { default as CaretDownOutline } from '@ant-design/icons/lib/outline/CaretDownOutline'
48+
export { default as CloseCircleOutline } from '@ant-design/icons/lib/outline/CloseCircleOutline'
49+
export { default as CheckCircleOutline } from '@ant-design/icons/lib/outline/CheckCircleOutline'
50+
51+
export { default as ExclamationCircleFill } from '@ant-design/icons/lib/fill/ExclamationCircleFill'
52+
export { default as CheckCircleFill } from '@ant-design/icons/lib/fill/CheckCircleFill'
53+
export { default as CloseCircleFill } from '@ant-design/icons/lib/fill/CloseCircleFill'
54+
export { default as InfoCircleFill } from '@ant-design/icons/lib/fill/InfoCircleFill'
55+
export { default as StarFill } from '@ant-design/icons/lib/fill/StarFill'

0 commit comments

Comments
 (0)