vue-vben-admin/src/components/registerGlobComp.ts

83 lines
1.4 KiB
TypeScript
Raw Normal View History

2020-09-28 20:19:10 +08:00
import Icon from './Icon/index';
import Button from './Button/index.vue';
import {
// Need
Button as AntButton,
// Optional
Select,
2020-11-13 00:55:25 +08:00
Alert,
Checkbox,
DatePicker,
Radio,
Switch,
Card,
List,
Tabs,
Descriptions,
Tree,
Table,
Divider,
Modal,
Drawer,
Dropdown,
Tag,
Tooltip,
Badge,
Popover,
Upload,
Transfer,
Steps,
2020-11-17 17:02:42 +08:00
PageHeader,
Result,
2020-11-17 22:28:32 +08:00
Empty,
2020-11-23 23:24:13 +08:00
Avatar,
} from 'ant-design-vue';
2020-11-18 22:52:13 +08:00
import { getApp } from '/@/setup/App';
2020-09-28 20:19:10 +08:00
const compList = [Icon, Button, AntButton.Group];
// Fix hmr multiple registered components
let registered = false;
export function registerGlobComp() {
if (registered) return;
2020-09-28 20:19:10 +08:00
compList.forEach((comp: any) => {
getApp().component(comp.name, comp);
2020-09-28 20:19:10 +08:00
});
registered = true;
// Optional
// Why register here The main reason for registering here is not to increase the size of the first screen code
// If you need to customize global components, you can write here
// If you dont need it, you can delete it
getApp()
.use(Select)
2020-11-13 00:55:25 +08:00
.use(Alert)
.use(Checkbox)
.use(DatePicker)
.use(Radio)
.use(Switch)
.use(Card)
.use(List)
.use(Descriptions)
.use(Tree)
.use(Table)
.use(Divider)
.use(Modal)
.use(Drawer)
.use(Dropdown)
.use(Tag)
.use(Tooltip)
.use(Badge)
.use(Popover)
.use(Upload)
.use(Transfer)
.use(Steps)
2020-11-17 17:02:42 +08:00
.use(PageHeader)
.use(Result)
2020-11-17 22:28:32 +08:00
.use(Empty)
2020-11-23 23:24:13 +08:00
.use(Avatar)
.use(Tabs);
2020-09-28 20:19:10 +08:00
}