forked from drone/command-center-dashboard

shuishen
2025-04-16 a7e6761ba0cfccdf33ed552eb2d3b783c8e4ab4a
src/views/Home/Home.vue
@@ -1,27 +1,56 @@
<script setup></script>
<template>
  <div class="left">10</div>
  <div class="right">20</div>
   <div :key="selectedAreaCode">
      <!--      单个机巢页面-->
      <SignMachineNest v-if="singleUavHome?.device_sn" :key="singleUavHome?.device_sn"/>
      <!--      事件概述详细信息页面-->
      <EventOverviewDetail v-else-if="isEventOverviewDetail" />
      <AINowFly v-else-if="isAINowFly" />
      <!--         首页默认的页面-->
      <template v-else>
         <HomeLeft />
         <HomeRight />
      </template>
   </div>
   <SearchBox />
   <RSide />
   <Footer />
</template>
<style scoped lang="scss">
div {
  font-size: 20px;
}
<script setup>
import HomeRight from '@/views/Home/HomeRight/HomeRight.vue'
import HomeLeft from '@/views/Home/HomeLeft/HomeLeft.vue'
import SearchBox from '@/views/Home/SearchBox.vue'
import SignMachineNest from '@/views/SignMachineNest/SignMachineNest.vue'
import { useStore } from 'vuex'
import Footer from '@/views/Home/Footer.vue'
import RSide from '@/views/Home/RSide.vue'
import { onMounted } from 'vue'
import cesiumOperation from '@/utils/cesium-tsa'
import EventOverviewDetail from '@/views/Home/EventOverviewDetail/EventOverviewDetail.vue'
import AINowFly from '@/views/Home/AINowFly.vue'
.left {
  left: 0;
  position: absolute;
  width: 300px;
  height: 100%;
  background: #2b373d;
}
.right{
  right: 0;
  position: absolute;
  width: 300px;
  height: 100%;
  background: #2b373d;
}
</style>
const store = useStore()
const { _init, viewerDestory } = cesiumOperation()
const singleUavHome = computed(() => store.state.home.singleUavHome)
const isEventOverviewDetail = computed(() => store.state.home.isEventOverviewDetail)
const isAINowFly = computed(() => store.state.home.footActiveIndex === 5)
const userAreaCode = computed(() => store.state.user.userInfo.detail.areaCode)
const selectedAreaCode = computed(() => store.state.user.selectedAreaCode)
onUnmounted(() => {
   store.commit('setSingleUavHome', null)
   store.commit('setIsEventOverviewDetail', false)
   store.commit('setFootActiveIndex', 0)
   viewerDestory()
})
onMounted(() => {
   _init('cesium')
})
</script>