main.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { createApp } from 'vue'
  2. import './assets/style/style.css'
  3. import './assets/style/main.scss'
  4. import App from './App.vue'
  5. import router from './router/index.js'
  6. import api from './api/index.js'
  7. import { createPinia } from 'pinia'
  8. import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
  9. import elementPlus from 'element-plus'
  10. import * as ElementPlusIconsVue from '@element-plus/icons-vue'
  11. import locale from 'element-plus/lib/locale/lang/zh-cn'
  12. import '@/assets/style/theme/index.scss'
  13. import Avue from '@smallwei/avue'
  14. import '@smallwei/avue/lib/index.css'
  15. import bus from 'vue3-eventbus'
  16. const myApp = createApp(App)
  17. myApp.config.globalProperties.$router = router
  18. myApp.config.globalProperties.$api = api
  19. myApp.config.globalProperties.$bus = bus
  20. myApp.config.devtools = true
  21. /** 开启Pinia 持久化插件 需要在store 中进行开启**/
  22. const pinia = createPinia()
  23. pinia.use(piniaPluginPersistedstate)
  24. for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  25. myApp.component(key, component)
  26. }
  27. myApp
  28. .use(pinia)
  29. .use(router)
  30. .use(elementPlus, { locale, size: 'default', zIndex: 300 })
  31. .use(Avue)
  32. .use(bus)
  33. .mount('#app')