import { createApp } from 'vue' import './assets/style/style.css' import './assets/style/main.scss' import App from './App.vue' import router from './router/index.js' import api from './api/index.js' import { createPinia } from 'pinia' import piniaPluginPersistedstate from 'pinia-plugin-persistedstate' import elementPlus from 'element-plus' import * as ElementPlusIconsVue from '@element-plus/icons-vue' import locale from 'element-plus/lib/locale/lang/zh-cn' import '@/assets/style/theme/index.scss' import Avue from '@smallwei/avue' import '@smallwei/avue/lib/index.css' import bus from 'vue3-eventbus' const myApp = createApp(App) myApp.config.globalProperties.$router = router myApp.config.globalProperties.$api = api myApp.config.globalProperties.$bus = bus myApp.config.devtools = true /** 开启Pinia 持久化插件 需要在store 中进行开启**/ const pinia = createPinia() pinia.use(piniaPluginPersistedstate) for (const [key, component] of Object.entries(ElementPlusIconsVue)) { myApp.component(key, component) } myApp .use(pinia) .use(router) .use(elementPlus, { locale, size: 'default', zIndex: 300 }) .use(Avue) .use(bus) .mount('#app')