main.ts 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { createApp } from "vue";
  2. import App from "./App.vue";
  3. import "@/style.css";
  4. // reset style sheet
  5. import "@/styles/reset.scss";
  6. // CSS common style sheet
  7. import "@/styles/common.scss";
  8. // iconfont css
  9. import "@/assets/iconfont/iconfont.scss";
  10. // font css
  11. import "@/assets/fonts/font.scss";
  12. // element css
  13. import "element-plus/dist/index.css";
  14. // element dark css
  15. import "element-plus/theme-chalk/dark/css-vars.css";
  16. // custom element dark css
  17. import "@/styles/element-dark.scss";
  18. // custom element css
  19. import "@/styles/element.scss";
  20. // svg icons
  21. import "virtual:svg-icons-register";
  22. // element plus
  23. import ElementPlus from "element-plus";
  24. // element icons
  25. import * as Icons from "@element-plus/icons-vue";
  26. // custom directives
  27. import directives from "@/directives/index";
  28. // vue Router
  29. import router from "@/routers";
  30. // vue i18n
  31. import I18n from "@/languages/index";
  32. // pinia store
  33. import pinia from "@/stores";
  34. // errorHandler
  35. import errorHandler from "@/utils/errorHandler";
  36. const app = createApp(App);
  37. app.config.errorHandler = errorHandler;
  38. // register the element Icons component
  39. Object.keys(Icons).forEach(key => {
  40. app.component(key, Icons[key as keyof typeof Icons]);
  41. });
  42. app.use(ElementPlus).use(directives).use(router).use(I18n).use(pinia).mount("#app");