Files
xian_vue_new/src/component/rain-earthquake/BasicComponent.vue
T

97 lines
2.9 KiB
Vue
Raw Normal View History

2026-04-11 10:09:40 +08:00
<!-- 基础组件 -->
<template>
<div>
<!-- 地图组件 -->
<MapComponent />
2026-04-28 10:05:49 +08:00
<!-- 暴雨场景隐患点组件 -->
<template v-if="props.disasterType === DisasterType.RAINSTORM">
<!-- 滑坡隐患点 -->
<LandslideComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().poiLayers.showLandslideHiddenPoint.loading
"
/>
<!-- 泥石流隐患点 -->
<DebrisFlowComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().poiLayers.showDebrisFlowHiddenPoint.loading
"
/>
<!-- 内涝隐患点 -->
<WaterLoggingComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().poiLayers.showWaterLoggingHiddenPoint.loading
"
/>
<!-- 山洪隐患点 -->
<FlashFloodComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().poiLayers.showFlashFloodHiddenPoint.loading
"
/>
</template>
<!-- 地震场景隐患点组件 -->
<template v-else-if="props.disasterType === DisasterType.EARTHQUAKE">
<!-- 滑坡隐患点 -->
<LandslideComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().poiLayers.showLandslideHiddenPoint.loading
"
/>
<!-- 泥石流隐患点 -->
<DebrisFlowComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().poiLayers.showDebrisFlowHiddenPoint.loading
"
/>
</template>
2026-04-11 10:09:40 +08:00
<!-- 风险点组件 -->
<RiskPointComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().mapLayers.riskPointShow.loading
"
/>
<!-- 降雨栅格图层组件(暴雨模拟) -->
<RainfallGridComponent
v-if="
useStatusStore().appLoadingCompleted &&
useStatusStore().weatherLayers.showRainfallGrid.loading
"
/>
2026-04-11 10:09:40 +08:00
</div>
</template>
<script setup lang="ts">
import MapComponent from '@/component/map/MapComponent.vue';
2026-04-28 10:05:49 +08:00
import { DisasterType } from '@/types/common/DisasterType.ts';
import RiskPointComponent from '@/component/rain-earthquake/basic/RiskPointComponent.vue';
2026-04-28 10:05:49 +08:00
import LandslideComponent from '@/component/rain-earthquake/basic/LandslideComponent.vue';
import DebrisFlowComponent from '@/component/rain-earthquake/basic/DebrisFlowComponent.vue';
import WaterLoggingComponent from '@/component/rain-earthquake/basic/WaterLoggingComponent.vue';
import FlashFloodComponent from '@/component/rain-earthquake/basic/FlashFloodComponent.vue';
import RainfallGridComponent from '@/component/rain-earthquake/detail-panels/RainfallGridComponent.vue';
2026-04-14 08:59:05 +08:00
import { useStatusStore } from '@/stores/useStatusStore';
2026-04-11 10:09:40 +08:00
// 获取父组件传递德数据
const props = defineProps<{
disasterType: DisasterType;
}>();
2026-04-11 10:09:40 +08:00
</script>
<style scoped></style>