import { createApp } from 'vue'; import App from '@/App.vue'; import axios from 'axios'; const app = createApp(App); // 设置 axios 基础 URL axios.defaults.baseURL = import.meta.env.VITE_API_URL; // 将 axios 实例添加到 Vue 的全局属性中,使其在所有组件中可通过 this.$axios 访问 app.config.globalProperties.$axios = axios; //vant import { Tabbar, TabbarItem } from 'vant'; app.use(Tabbar); app.use(TabbarItem); // pinia store import { createPinia } from 'pinia'; const pinia = createPinia(); app.use(pinia); import router from '@/router'; app.use(router); // main app css import '@/assets/css/app.css'; // perfect scrollbar import PerfectScrollbar from 'vue3-perfect-scrollbar'; app.use(PerfectScrollbar); //vue-meta import { createHead } from '@vueuse/head'; const head = createHead(); app.use(head); // set default settings import appSetting from '@/app-setting'; appSetting.init(); //vue-i18n import i18n from '@/i18n'; app.use(i18n); // tippy tooltips import { TippyPlugin } from 'tippy.vue'; app.use(TippyPlugin); //input mask import Maska from 'maska'; app.use(Maska); //markdown editor import VueEasymde from 'vue3-easymde'; import 'easymde/dist/easymde.min.css'; app.use(VueEasymde); // popper import Popper from 'vue3-popper'; app.component('Popper', Popper); // json to excel import vue3JsonExcel from 'vue3-json-excel'; app.use(vue3JsonExcel); /* 引入element-plus */ import ElementPlus from 'element-plus' import 'element-plus/dist/index.css' app.use(ElementPlus) /* 全局引入 */ import './permission' app.mount('#app');