import { createApp } from 'vue' import App from './App.vue' import router from './router' import ElementPlus from 'element-plus' import zhCn from 'element-plus/es/locale/lang/zh-cn' import 'element-plus/dist/index.css' import * as ElementPlusIconsVue from '@element-plus/icons-vue' import './assets/css/common.css' // 引入公共CSS文件 import JsonExcel from 'vue-json-excel' import { createPinia } from 'pinia' import VxeUI from 'vxe-pc-ui' import 'vxe-pc-ui/lib/style.css' import VxeUITable from 'vxe-table' import 'vxe-table/lib/style.css' const a = createApp(App) import { useAdminStore } from '../src/store' // 全局注册 ElementPlus 图标 for (const [key, component] of Object.entries(ElementPlusIconsVue)) { a.component(key, component) } const pinia = createPinia() // 使用 ElementPlus 和路由器 a.use(ElementPlus, { locale: zhCn }) .use(router) .use(VxeUI) .use(VxeUITable) .use(pinia) .mount('#app') // 恢复localStorage数据 const adminStore = useAdminStore() adminStore.initFromLocalStorage() // 注册 JsonExcel 组件 a.component('downloadExcel', JsonExcel)