main.ts 972 B

12345678910111213141516171819202122232425262728293031323334
  1. import { createApp } from 'vue'
  2. import pinia from "./stores/index";
  3. import router from "./router";
  4. import './style.css'
  5. import App from './App.vue'
  6. import ElementPlus from 'element-plus'
  7. import 'element-plus/dist/index.css'
  8. import * as ElementPlusIconsVue from '@element-plus/icons-vue'
  9. import { lissenLog, log } from './utils/log'
  10. import useUserInfo from './stores/modules/user'
  11. const app = createApp(App)
  12. app.use(ElementPlus)
  13. for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  14. app.component(key, component)
  15. }
  16. app.use(pinia)
  17. app.use(router)
  18. // 注册埋点指令和路由监听 - 确保在router使用后立即注册
  19. lissenLog(app)
  20. log(router)
  21. app.mount('#app')
  22. // 刷新后根据会话标记显示登录弹窗
  23. try {
  24. const flag = sessionStorage.getItem('NEED_LOGIN_MODAL')
  25. if (flag) {
  26. const userStore = useUserInfo()
  27. userStore.updateLoginShow(true)
  28. sessionStorage.removeItem('NEED_LOGIN_MODAL')
  29. }
  30. } catch {}