index.ts 744 B

12345678910111213141516171819202122232425262728293031323334
  1. import { App } from 'vue';
  2. import SvgIcon from './Icon/Index.vue';
  3. // 导入SVG图标
  4. import './Icon/register';
  5. // 需要全局注册的组件列表
  6. const components = {
  7. SvgIcon,
  8. // 在这里添加更多需要全局注册的组件
  9. };
  10. /**
  11. * 批量注册全局组件
  12. * @param app Vue应用实例
  13. */
  14. export function registerGlobalComponents(app: App) {
  15. // 注册所有组件
  16. Object.entries(components).forEach(([name, component]) => {
  17. app.component(name, component);
  18. });
  19. console.log(`已全局注册 ${Object.keys(components).length} 个组件`);
  20. }
  21. // 导出所有组件,方便按需导入
  22. export {
  23. SvgIcon,
  24. // 在这里导出更多组件
  25. };
  26. // 默认导出注册函数
  27. export default registerGlobalComponents;