123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import { createApp } from "vue";
- import App from "./App.vue";
- import router from "@/router";
- import { setupStore } from "@/store";
- import { setupDirective } from "@/directive";
- import { setupElIcons, setupI18n, setupPermission } from "@/plugins";
- import Loading from "./components/FullLoading/index";
- // 本地SVG图标
- import "virtual:svg-icons-register";
- // 样式
- import "element-plus/theme-chalk/dark/css-vars.css";
- import "@/styles/index.scss";
- import "uno.css";
- import "animate.css";
- // avue
- import { setupEleAvue } from "@/plugins";
- const app = createApp(App);
- type Lod = {
- show: () => void;
- hide: () => void;
- isShow: boolean;
- };
- declare module "@vue/runtime-core" {
- export interface ComponentCustomProperties {
- $loading: Lod;
- }
- }
- // 全局注册 自定义指令(directive)
- setupDirective(app);
- // 全局注册 状态管理(store)
- setupStore(app);
- // 全局注册Element-plus图标
- setupElIcons(app);
- // 国际化
- setupI18n(app);
- // 注册动态路由
- setupPermission();
- setupEleAvue(app);
- app.use(Loading).use(router).mount("#app");
|