// 引入unocss css import '@/plugins/unocss' // 导入全局的svg图标 import '@/plugins/svgIcon' // 初始化多语言 import { setupI18n } from '@/plugins/vueI18n' // 引入状态管理 import { setupStore } from '@/store' // 全局组件 import { setupGlobCom } from '@/components' // 引入 element-plus import { setupElementPlus } from '@/plugins/elementPlus' // 引入 form-create import { setupFormCreate } from '@/plugins/formCreate' // 引入全局样式 import '@/styles/index.scss' // 引入动画 import '@/plugins/animate.css' // 路由 import router, { setupRouter } from '@/router' // 权限 import { setupAuth } from '@/directives' import { createApp } from 'vue' import App from './App.vue' import './permission' import '@/plugins/tongji' // 百度统计 import Logger from '@/utils/Logger' import VueDOMPurifyHTML from 'vue-dompurify-html' // 解决v-html 的安全隐患 import DataVVue3 from '@kjgl77/datav-vue3' import { useLocaleStore } from '@/store/modules/locale' import { vue_next_focus } from "vue-next-focus"; // 创建实例 const setupAll = async () => { const app = createApp(App) await setupI18n(app) setupStore(app) setupGlobCom(app) setupElementPlus(app) setupFormCreate(app) setupRouter(app) setupAuth(app) await router.isReady() app.use(VueDOMPurifyHTML) app.use(DataVVue3) app.use( vue_next_focus ) app.mount('#app') app.config.warnHandler = () => null; } // 多语言相关 const localeStore = useLocaleStore() if(localeStore&&localeStore.currentLocale&&localeStore.currentLocale.lang.indexOf('en')>-1&&document.querySelector('#app-loading-title')){ document.querySelector('#app-loading-title').innerHTML = 'HELLA Smart Factory Management Platform' // 富维海拉智慧工厂管理平台 } setupAll() Logger.prettyPrimary(`欢迎使用`, import.meta.env.VITE_APP_TITLE)