App.vue 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <template>
  2. <a-config-provider :locale="locale" :auto-insert-space-in-button="false">
  3. <RouterView v-if="isRouterReady" :key="routerKey">
  4. <template #default="{ Component, route }">
  5. <component
  6. :is="isFullScreen ? Component : BaseLayout"
  7. v-bind="isFullScreen ? {} : { content: Component }"
  8. v-on="isFullScreen ? {} : { refresh: refreshPage }"
  9. >
  10. <keep-alive>
  11. <component
  12. :is="Component"
  13. v-if="route.meta.keepAlive"
  14. :key="route.meta.usePathKey ? route.path : route.name"
  15. />
  16. </keep-alive>
  17. <component
  18. :is="Component"
  19. v-if="!route.meta.keepAlive"
  20. :key="route.meta.usePathKey ? route.path : route.name"
  21. />
  22. </component>
  23. </template>
  24. </RouterView>
  25. </a-config-provider>
  26. </template>
  27. <script setup lang="ts">
  28. import { computed, ref, onMounted } from 'vue'
  29. import BaseLayout from '@/layout/index.vue'
  30. import { useRoute, useRouter } from 'vue-router'
  31. import zhCN from 'ant-design-vue/es/locale/zh_CN'
  32. import dayjs from 'dayjs'
  33. import 'dayjs/locale/zh-cn'
  34. dayjs.locale('zh-cn')
  35. const locale = zhCN
  36. const route = useRoute()
  37. const router = useRouter()
  38. const isRouterReady = ref(false)
  39. const routerKey = ref(Date.now())
  40. onMounted(() => {
  41. router.isReady().then(() => {
  42. isRouterReady.value = true
  43. const mode = import.meta.env.MODE
  44. const apiHost = import.meta.env.VITE_APP_HOST
  45. const mqttHostAlarm = import.meta.env.VITE_MQTT_HOST_ALARM
  46. const mqttHostPoint = import.meta.env.VITE_MQTT_HOST_POINT
  47. // 环境信息
  48. // console.log(`🚀CurrentMode: ${import.meta.env.MODE}`)
  49. // console.log(`🚀HostAPI: ${import.meta.env.VITE_APP_HOST}`)
  50. // console.log(`🚀ProxyAPI: ${import.meta.env.VITE_APP_HOST}`)
  51. // console.log(`🚀AlarmMQTT: ${import.meta.env.VITE_MQTT_HOST_ALARM}`)
  52. // console.log(`🚀PointMQTT: ${import.meta.env.VITE_MQTT_HOST_POINT}`)
  53. console.log('📘📘📘 Environment LOG 📘📘📘', {
  54. mode,
  55. apiHost,
  56. mqttHostAlarm,
  57. mqttHostPoint,
  58. })
  59. })
  60. })
  61. const isFullScreen = computed(() => Boolean(route.meta?.isFullScreen))
  62. console.log('🚀App route🚀', route)
  63. // 刷新页面
  64. const refreshPage = () => {
  65. routerKey.value = Date.now()
  66. }
  67. </script>
  68. <style scoped lang="less"></style>