front/src/components/index.ts

54 lines
1.3 KiB
TypeScript

import { App } from 'vue';
// 需要全局注册的自定义组件列表
import FormPro from './FormPro/index.vue';
import SelectPro from './SelectPro/index.vue';
import Breadcrumb from './breadcrumb/index.vue';
import Chart from './chart/index.vue';
import Footer from './footer/index.vue';
import GlobalSetting from './global-setting/index.vue';
import Menu from './menu/index.vue';
import MessageBox from './message-box/index.vue';
import Navbar from './navbar/index.vue';
import TabBar from './tab-bar/index.vue';
import CascaderPro from './CascaderPro/Cascader.vue';
import JsonEditorPro from './JsonEditorPro/index.vue';
import JsonDiffPro from './JsonDiffPro/index.vue';
import ModalFormPro from './ModalForm/index.vue';
import TagsAdd from './TagsAdd/index.vue';
import QuantityInput from './QuantityInput/index.vue';
import Timezone from './Timezone/index.vue';
// 统一注册
const components = [
FormPro,
SelectPro,
Breadcrumb,
Chart,
Footer,
GlobalSetting,
Menu,
MessageBox,
Navbar,
TabBar,
CascaderPro,
JsonEditorPro,
JsonDiffPro,
ModalFormPro,
TagsAdd,
QuantityInput,
Timezone
];
export default {
install(app: App) {
components.forEach((comp) => {
const { name } = comp;
if (typeof name === 'string') {
app.component(name, comp);
}
});
},
};