右侧控制显示面板,同时规整显示隐藏点的逻辑
This commit is contained in:
Vendored
+1
@@ -12,6 +12,7 @@ export {}
|
|||||||
declare module 'vue' {
|
declare module 'vue' {
|
||||||
export interface GlobalComponents {
|
export interface GlobalComponents {
|
||||||
ElButton: typeof import('element-plus/es')['ElButton']
|
ElButton: typeof import('element-plus/es')['ElButton']
|
||||||
|
ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
|
||||||
ElCol: typeof import('element-plus/es')['ElCol']
|
ElCol: typeof import('element-plus/es')['ElCol']
|
||||||
ElDialog: typeof import('element-plus/es')['ElDialog']
|
ElDialog: typeof import('element-plus/es')['ElDialog']
|
||||||
ElIcon: typeof import('element-plus/es')['ElIcon']
|
ElIcon: typeof import('element-plus/es')['ElIcon']
|
||||||
|
|||||||
+1
-1
@@ -16,7 +16,7 @@
|
|||||||
let loadingInstanve = ElLoading.service(loadingOption);
|
let loadingInstanve = ElLoading.service(loadingOption);
|
||||||
|
|
||||||
watch(
|
watch(
|
||||||
() => useStatusStore().getAppLoadingCompleted(),
|
() => useStatusStore().appLoadingCompleted,
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val) {
|
if (val) {
|
||||||
loadingInstanve.close();
|
loadingInstanve.close();
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
|
|
||||||
// 数据转换
|
// 数据转换
|
||||||
Object.entries(props.data).forEach(([key, value]) => {
|
Object.entries(props.data).forEach(([key, value]) => {
|
||||||
// 判读key是不是存在field中,存在就添加到表格数据,不存在则不添加
|
// 判断key是不是存在field中,存在就添加到表格数据,不存在则不添加
|
||||||
if (Object.hasOwn(props.field, key) && value) {
|
if (Object.hasOwn(props.field, key) && value) {
|
||||||
tableDatas.value.push({
|
tableDatas.value.push({
|
||||||
title: props.field[key],
|
title: props.field[key],
|
||||||
|
|||||||
@@ -5,7 +5,8 @@
|
|||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { useAdministrativeDivision } from '@/hooks/map/useAdministrativeDivision';
|
import { useAdministrativeDivision } from '@/hooks/map/useAdministrativeDivision';
|
||||||
import { useStatusStore } from '@/stores/useStatusStore';
|
import { useLoadingResourceStore } from '@/stores/useLoadingResourceStore';
|
||||||
|
import { LoadingResource } from '@/types/common/LoadingResourceType';
|
||||||
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
||||||
import { Color } from 'cesium';
|
import { Color } from 'cesium';
|
||||||
import { onMounted } from 'vue';
|
import { onMounted } from 'vue';
|
||||||
@@ -42,10 +43,11 @@
|
|||||||
|
|
||||||
await CesiumUtilsSingleton.batchAddGeoJsonLayers(layerConfigs);
|
await CesiumUtilsSingleton.batchAddGeoJsonLayers(layerConfigs);
|
||||||
|
|
||||||
// 根据状态显示隐藏行政区划
|
// 记录行政区划id
|
||||||
if (!useStatusStore().getShowAdministrativeDivision()) {
|
useLoadingResourceStore().addLoadingResource(
|
||||||
CesiumUtilsSingleton.batchHideGeoJsonLayers(areasId);
|
LoadingResource.ADMINISTRATIVE_DIVISION,
|
||||||
}
|
areasId
|
||||||
|
);
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<div class="map_container" id="map-container"></div>
|
<div class="map_container" id="map-container"></div>
|
||||||
|
|
||||||
<!-- 行政区划 -->
|
<!-- 行政区划 -->
|
||||||
<AdministrativeDivision v-if="useStatusStore().getAppLoadingCompleted()" />
|
<AdministrativeDivision v-if="useStatusStore().appLoadingCompleted" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
onBeforeMount(() => {
|
onBeforeMount(() => {
|
||||||
// 初始化为false
|
// 初始化为false
|
||||||
useStatusStore().setAppLoadingCompleted(false);
|
useStatusStore().appLoadingCompleted = false;
|
||||||
|
|
||||||
// 重置状态
|
// 重置状态
|
||||||
useLoadingInformationStore().resetStatue();
|
useLoadingInformationStore().resetStatue();
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 设置状态
|
// 设置状态
|
||||||
useStatusStore().setAppLoadingCompleted(true);
|
useStatusStore().appLoadingCompleted = true;
|
||||||
|
|
||||||
// 注册全局点击监听器
|
// 注册全局点击监听器
|
||||||
useMap().registerAndClickOnTheListener();
|
useMap().registerAndClickOnTheListener();
|
||||||
|
|||||||
@@ -7,11 +7,11 @@
|
|||||||
<!-- 隐患点组件 -->
|
<!-- 隐患点组件 -->
|
||||||
<HiddenPointComponent
|
<HiddenPointComponent
|
||||||
:disaster-type="props.disasterType"
|
:disaster-type="props.disasterType"
|
||||||
v-if="useStatusStore().getAppLoadingCompleted()"
|
v-if="useStatusStore().appLoadingCompleted"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- 风险点组件 -->
|
<!-- 风险点组件 -->
|
||||||
<RiskPointComponent v-if="useStatusStore().getAppLoadingCompleted()" />
|
<RiskPointComponent v-if="useStatusStore().appLoadingCompleted" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,65 @@
|
|||||||
|
<template>
|
||||||
|
<div class="control-show-panel-box">
|
||||||
|
<div class="title-box">
|
||||||
|
<header>控制显示</header>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="control-show-list">
|
||||||
|
<div v-for="(item, index) in constrolShowList" :key="index">
|
||||||
|
<el-checkbox
|
||||||
|
v-model="item.selected"
|
||||||
|
:label="item.name"
|
||||||
|
@change="item.callback(item.selected)"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts" setup>
|
||||||
|
defineProps<{
|
||||||
|
constrolShowList: {
|
||||||
|
name: string;
|
||||||
|
selected: boolean;
|
||||||
|
callback: (...args: unknown[]) => unknown;
|
||||||
|
}[];
|
||||||
|
}>();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.control-show-panel-box {
|
||||||
|
position: absolute;
|
||||||
|
top: 75px;
|
||||||
|
right: 0px;
|
||||||
|
border-radius: 2px;
|
||||||
|
z-index: 1000;
|
||||||
|
width: 160px;
|
||||||
|
overflow: auto;
|
||||||
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
||||||
|
color: white;
|
||||||
|
border: 1px solid rgb(0, 225, 255);
|
||||||
|
}
|
||||||
|
.title-box {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 12px;
|
||||||
|
background: linear-gradient(
|
||||||
|
180deg,
|
||||||
|
rgb(86, 204, 242) 0%,
|
||||||
|
rgb(47, 128, 237) 100%
|
||||||
|
);
|
||||||
|
padding: 8px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.control-show-list {
|
||||||
|
background: rgba(14, 52, 98, 0.8);
|
||||||
|
padding: 8px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
font-size: 12px;
|
||||||
|
gap: 6px;
|
||||||
|
}
|
||||||
|
:deep(.el-checkbox) {
|
||||||
|
height: auto;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -6,13 +6,15 @@
|
|||||||
type="primary"
|
type="primary"
|
||||||
@click="changeStatus"
|
@click="changeStatus"
|
||||||
circle
|
circle
|
||||||
:title="`${useStatusStore().getDisasterChainPointShow() ? '关闭' : '打开'}灾害链影响点列表`"
|
:title="`${useStatusStore().uiComponents.disasterChainPointShow ? '关闭' : '打开'}灾害链影响点列表`"
|
||||||
>{{ useStatusStore().getDisasterChainPointShow() ? '-' : '+' }}</el-button
|
>{{
|
||||||
|
useStatusStore().uiComponents.disasterChainPointShow ? '-' : '+'
|
||||||
|
}}</el-button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="disaster-list-box"
|
class="disaster-list-box"
|
||||||
v-show="useStatusStore().getDisasterChainPointShow()"
|
v-show="useStatusStore().uiComponents.disasterChainPointShow"
|
||||||
>
|
>
|
||||||
<header class="table-title">
|
<header class="table-title">
|
||||||
<span>灾害链影响点列表</span>
|
<span>灾害链影响点列表</span>
|
||||||
@@ -122,9 +124,8 @@
|
|||||||
|
|
||||||
// 切换面板显示状态
|
// 切换面板显示状态
|
||||||
const changeStatus = () => {
|
const changeStatus = () => {
|
||||||
useStatusStore().setDisasterChainPointShow(
|
useStatusStore().uiComponents.disasterChainPointShow =
|
||||||
!useStatusStore().getDisasterChainPointShow()
|
!useStatusStore().uiComponents.disasterChainPointShow;
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// 上一页
|
// 上一页
|
||||||
|
|||||||
@@ -3,14 +3,12 @@
|
|||||||
<div>
|
<div>
|
||||||
<!-- 加载基础隐患点 -->
|
<!-- 加载基础隐患点 -->
|
||||||
<LoadingPoints
|
<LoadingPoints
|
||||||
v-if="
|
v-if="useStatusStore().appLoadingCompleted && baseHiddenPoints.length > 0"
|
||||||
useStatusStore().getAppLoadingCompleted() && baseHiddenPoints.length > 0
|
|
||||||
"
|
|
||||||
:base-points="baseHiddenPoints"
|
:base-points="baseHiddenPoints"
|
||||||
:get-disaster-icon="getDisasterIcon"
|
:get-disaster-icon="getDisasterIcon"
|
||||||
:prefix="config.prefix.hiddenDangerPointId"
|
:prefix="config.prefix.hiddenDangerPointId"
|
||||||
:show-points="useStatusStore().getHiddenDangerPointShow()"
|
|
||||||
:is-default="true"
|
:is-default="true"
|
||||||
|
:loading-resource-field="LoadingResource.HIDDEN_DANGER_POINT"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- 显示信息框 -->
|
<!-- 显示信息框 -->
|
||||||
@@ -36,10 +34,11 @@
|
|||||||
import LoadingPoints from '@/component/rain-earthquake/LoadingPoints.vue';
|
import LoadingPoints from '@/component/rain-earthquake/LoadingPoints.vue';
|
||||||
import config from '@/config/config.json';
|
import config from '@/config/config.json';
|
||||||
import InformationBox from '@/component/common/InformationBox.vue';
|
import InformationBox from '@/component/common/InformationBox.vue';
|
||||||
import { useStatusStore } from '@/stores/useStatusStore';
|
|
||||||
import { useLoadingInformationStore } from '@/stores/useLoadingInformation';
|
import { useLoadingInformationStore } from '@/stores/useLoadingInformation';
|
||||||
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
||||||
import { useHiddenPoint } from '@/hooks/rain-earthquake/useHiddenPoint';
|
import { useHiddenPoint } from '@/hooks/rain-earthquake/useHiddenPoint';
|
||||||
|
import { useStatusStore } from '@/stores/useStatusStore';
|
||||||
|
import { LoadingResource } from '@/types/common/LoadingResourceType';
|
||||||
|
|
||||||
// 接收父组件传递的参数
|
// 接收父组件传递的参数
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<div
|
<div
|
||||||
class="left-button-box"
|
class="left-button-box"
|
||||||
:style="{
|
:style="{
|
||||||
left: `${useStatusStore().getDisasterChainPointShow() ? 575 : 100}px`,
|
left: `${useStatusStore().uiComponents.disasterChainPointShow ? 575 : 100}px`,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<ul class="left-button-ul">
|
<ul class="left-button-ul">
|
||||||
|
|||||||
@@ -4,17 +4,17 @@
|
|||||||
<div
|
<div
|
||||||
class="control-box"
|
class="control-box"
|
||||||
:style="{
|
:style="{
|
||||||
bottom: `${useStatusStore().getLegendShow() ? 248 : 25}px`,
|
bottom: `${useStatusStore().uiComponents.legendShow ? 248 : 25}px`,
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<el-button
|
<el-button
|
||||||
@click="changeStatus"
|
@click="changeStatus"
|
||||||
circle
|
circle
|
||||||
:title="`${useStatusStore().getLegendShow() ? '关闭' : '打开'}图例`"
|
:title="`${useStatusStore().uiComponents.legendShow ? '关闭' : '打开'}图例`"
|
||||||
>{{ useStatusStore().getLegendShow() ? '-' : '+' }}</el-button
|
>{{ useStatusStore().uiComponents.legendShow ? '-' : '+' }}</el-button
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="legend-box" v-show="useStatusStore().getLegendShow()">
|
<div class="legend-box" v-show="useStatusStore().uiComponents.legendShow">
|
||||||
<div class="title-box">
|
<div class="title-box">
|
||||||
<header>图例</header>
|
<header>图例</header>
|
||||||
</div>
|
</div>
|
||||||
@@ -55,7 +55,8 @@
|
|||||||
|
|
||||||
// 切换图例显示状态
|
// 切换图例显示状态
|
||||||
const changeStatus = () => {
|
const changeStatus = () => {
|
||||||
useStatusStore().setLegendShow(!useStatusStore().getLegendShow());
|
useStatusStore().uiComponents.legendShow =
|
||||||
|
!useStatusStore().uiComponents.legendShow;
|
||||||
};
|
};
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
|||||||
@@ -7,15 +7,16 @@
|
|||||||
import { onMounted } from 'vue';
|
import { onMounted } from 'vue';
|
||||||
import { usePointsHandle } from '@/hooks/usePointsHandle';
|
import { usePointsHandle } from '@/hooks/usePointsHandle';
|
||||||
import type { Point } from '@/types/base/Point';
|
import type { Point } from '@/types/base/Point';
|
||||||
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
import type { LoadingResource } from '@/types/common/LoadingResourceType';
|
||||||
|
import { useLoadingResourceStore } from '@/stores/useLoadingResourceStore';
|
||||||
|
|
||||||
// 属性
|
// 属性
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
basePoints: Point[];
|
basePoints: Point[];
|
||||||
getDisasterIcon: (disasterType?: string) => string;
|
getDisasterIcon: (disasterType?: string) => string;
|
||||||
prefix: string;
|
prefix: string;
|
||||||
showPoints: boolean;
|
|
||||||
isDefault?: boolean;
|
isDefault?: boolean;
|
||||||
|
loadingResourceField?: LoadingResource;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
// 点处理钩子
|
// 点处理钩子
|
||||||
@@ -30,10 +31,11 @@
|
|||||||
props.isDefault
|
props.isDefault
|
||||||
);
|
);
|
||||||
|
|
||||||
// 显示隐藏点
|
// 记录id
|
||||||
if (!props.showPoints) {
|
useLoadingResourceStore().addLoadingResource(
|
||||||
CesiumUtilsSingleton.batchTogglePrimitives(ids, props.showPoints);
|
props.loadingResourceField!,
|
||||||
}
|
ids
|
||||||
|
);
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -3,12 +3,12 @@
|
|||||||
<div>
|
<div>
|
||||||
<!-- 加载风险点 -->
|
<!-- 加载风险点 -->
|
||||||
<LoadingPoints
|
<LoadingPoints
|
||||||
v-if="useStatusStore().getAppLoadingCompleted() && riskPoints.length > 0"
|
v-if="useStatusStore().appLoadingCompleted && riskPoints.length > 0"
|
||||||
:base-points="riskPoints"
|
:base-points="riskPoints"
|
||||||
:get-disaster-icon="getDisasterIcon"
|
:get-disaster-icon="getDisasterIcon"
|
||||||
:prefix="config.prefix.riskPointId"
|
:prefix="config.prefix.riskPointId"
|
||||||
:show-points="useStatusStore().getRiskPointShow()"
|
|
||||||
:is-default="true"
|
:is-default="true"
|
||||||
|
:loading-resource-field="LoadingResource.RISK_POINT"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- 显示信息框 -->
|
<!-- 显示信息框 -->
|
||||||
@@ -35,6 +35,7 @@
|
|||||||
import { useLoadingInformationStore } from '@/stores/useLoadingInformation';
|
import { useLoadingInformationStore } from '@/stores/useLoadingInformation';
|
||||||
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
||||||
import { useRiskPoint } from '@/hooks/rain-earthquake/useRiskPoint';
|
import { useRiskPoint } from '@/hooks/rain-earthquake/useRiskPoint';
|
||||||
|
import { LoadingResource } from '@/types/common/LoadingResourceType';
|
||||||
|
|
||||||
const riskPoints = ref<Point[]>([]);
|
const riskPoints = ref<Point[]>([]);
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,11 @@ import { ref } from 'vue';
|
|||||||
import type { XianHiddenDangerSpots } from '@/types/base/XianHiddenDangerSpots';
|
import type { XianHiddenDangerSpots } from '@/types/base/XianHiddenDangerSpots';
|
||||||
import type { PaginationType } from '@/types/common/PaginationType';
|
import type { PaginationType } from '@/types/common/PaginationType';
|
||||||
import { PointType } from '@/types/common/DisasterType';
|
import { PointType } from '@/types/common/DisasterType';
|
||||||
|
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
||||||
|
import config from '@/config/config.json';
|
||||||
|
import { useStatusStore } from '@/stores/useStatusStore';
|
||||||
|
import { useLoadingResourceStore } from '@/stores/useLoadingResourceStore';
|
||||||
|
import { LoadingResource } from '@/types/common/LoadingResourceType';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 暴雨灾害链影响点列表钩子函数
|
* 暴雨灾害链影响点列表钩子函数
|
||||||
@@ -123,6 +128,176 @@ export const useEarthquakeDisasterChain = () => {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 右侧按钮信息
|
||||||
|
*/
|
||||||
|
const rightButtonInfo = [
|
||||||
|
{
|
||||||
|
name: '地震模拟',
|
||||||
|
callback: () => {
|
||||||
|
console.log('地震模拟');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '图件下载',
|
||||||
|
callback: () => {
|
||||||
|
console.log('图件下载');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '清除模拟',
|
||||||
|
callback: () => {
|
||||||
|
CesiumUtilsSingleton.clearAllResources('custom');
|
||||||
|
},
|
||||||
|
executeOnce: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '视角重置',
|
||||||
|
callback: () => {
|
||||||
|
CesiumUtilsSingleton.flyToTarget(
|
||||||
|
config.defaultPosition as [number, number, number]
|
||||||
|
);
|
||||||
|
},
|
||||||
|
executeOnce: true,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const controlPanel = ref([
|
||||||
|
{
|
||||||
|
name: '显示隐患点',
|
||||||
|
selected: useStatusStore().mapLayers.hiddenDangerPointShow,
|
||||||
|
callback: (status: unknown) => {
|
||||||
|
if (status as boolean) {
|
||||||
|
// 显示隐患点
|
||||||
|
CesiumUtilsSingleton.batchShowPrimitives(
|
||||||
|
useLoadingResourceStore().getLoadingResource(
|
||||||
|
LoadingResource.HIDDEN_DANGER_POINT
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 显示风险点
|
||||||
|
CesiumUtilsSingleton.batchShowPrimitives(
|
||||||
|
useLoadingResourceStore().getLoadingResource(
|
||||||
|
LoadingResource.RISK_POINT
|
||||||
|
)
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
// 隐藏隐患点
|
||||||
|
CesiumUtilsSingleton.batchHidePrimitives(
|
||||||
|
useLoadingResourceStore().getLoadingResource(
|
||||||
|
LoadingResource.HIDDEN_DANGER_POINT
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 隐藏风险点
|
||||||
|
CesiumUtilsSingleton.batchHidePrimitives(
|
||||||
|
useLoadingResourceStore().getLoadingResource(
|
||||||
|
LoadingResource.RISK_POINT
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示医院',
|
||||||
|
selected: useStatusStore().poiLayers.showHospital,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示医院');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示危险源',
|
||||||
|
selected: useStatusStore().poiLayers.showDangerSource,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示危险源');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示避难所',
|
||||||
|
selected: useStatusStore().poiLayers.showRefugeeShelter,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示避难所');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示消防站',
|
||||||
|
selected: useStatusStore().poiLayers.showFireStation,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示消防站');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示储备点',
|
||||||
|
selected: useStatusStore().poiLayers.showReservePoint,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示储备点');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示学校',
|
||||||
|
selected: useStatusStore().poiLayers.showSchool,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示学校');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示人口网格',
|
||||||
|
selected: useStatusStore().poiLayers.showPopulationGrid,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示人口网格');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示管网系统',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showNetworkSystem,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示管网系统');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示交通道路',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showTrafficRoad,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示交通道路');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示桥梁',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showBridge,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示桥梁');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示高速',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showHighway,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示高速');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示国道',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showMainRoad,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示国道');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示水库',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showReservoir,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示水库');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示地铁站',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showReservoir,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示地铁站');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
|
||||||
// 把所有需要用到的数据/方法 return 出去
|
// 把所有需要用到的数据/方法 return 出去
|
||||||
return {
|
return {
|
||||||
conditions,
|
conditions,
|
||||||
@@ -131,6 +306,8 @@ export const useEarthquakeDisasterChain = () => {
|
|||||||
tableColumns,
|
tableColumns,
|
||||||
paginationConfig,
|
paginationConfig,
|
||||||
leftButtonInfo,
|
leftButtonInfo,
|
||||||
|
rightButtonInfo,
|
||||||
|
controlPanel,
|
||||||
changeConditions,
|
changeConditions,
|
||||||
changeCurrentPage,
|
changeCurrentPage,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import type { PaginationType } from '@/types/common/PaginationType';
|
|||||||
import { PointType } from '@/types/common/DisasterType';
|
import { PointType } from '@/types/common/DisasterType';
|
||||||
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
import { CesiumUtilsSingleton } from '@/utils/cesium/CesiumUtils';
|
||||||
import config from '@/config/config.json';
|
import config from '@/config/config.json';
|
||||||
|
import { useStatusStore } from '@/stores/useStatusStore';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 暴雨灾害链影响点列表钩子函数
|
* 暴雨灾害链影响点列表钩子函数
|
||||||
@@ -143,9 +144,9 @@ export const useRainDisasterChain = () => {
|
|||||||
*/
|
*/
|
||||||
const rightButtonInfo = [
|
const rightButtonInfo = [
|
||||||
{
|
{
|
||||||
name: '暴雨下载',
|
name: '暴雨触发',
|
||||||
callback: () => {
|
callback: () => {
|
||||||
console.log('暴雨下载');
|
console.log('暴雨触发');
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -184,6 +185,107 @@ export const useRainDisasterChain = () => {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
const controlPanel = [
|
||||||
|
{
|
||||||
|
name: '显示医院',
|
||||||
|
selected: useStatusStore().poiLayers.showHospital,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示医院');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示危险源',
|
||||||
|
selected: useStatusStore().poiLayers.showDangerSource,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示危险源');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示避难所',
|
||||||
|
selected: useStatusStore().poiLayers.showRefugeeShelter,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示避难所');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示消防站',
|
||||||
|
selected: useStatusStore().poiLayers.showFireStation,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示消防站');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示储备点',
|
||||||
|
selected: useStatusStore().poiLayers.showReservePoint,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示储备点');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示学校',
|
||||||
|
selected: useStatusStore().poiLayers.showSchool,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示学校');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示人口网格',
|
||||||
|
selected: useStatusStore().poiLayers.showPopulationGrid,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示人口网格');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示管网系统',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showNetworkSystem,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示管网系统');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示交通道路',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showTrafficRoad,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示交通道路');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示桥梁',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showBridge,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示桥梁');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示高速',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showHighway,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示高速');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示国道',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showMainRoad,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示国道');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示水库',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showReservoir,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示水库');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '显示地铁站',
|
||||||
|
selected: useStatusStore().infrastructureLayers.showReservoir,
|
||||||
|
callback: () => {
|
||||||
|
console.log('显示地铁站');
|
||||||
|
},
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
// 把所有需要用到的数据/方法 return 出去
|
// 把所有需要用到的数据/方法 return 出去
|
||||||
return {
|
return {
|
||||||
conditions,
|
conditions,
|
||||||
@@ -193,6 +295,7 @@ export const useRainDisasterChain = () => {
|
|||||||
paginationConfig,
|
paginationConfig,
|
||||||
leftButtonInfo,
|
leftButtonInfo,
|
||||||
rightButtonInfo,
|
rightButtonInfo,
|
||||||
|
controlPanel,
|
||||||
changeConditions,
|
changeConditions,
|
||||||
changeCurrentPage,
|
changeCurrentPage,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
import type { LoadingResource } from '@/types/common/LoadingResourceType';
|
||||||
|
import { defineStore } from 'pinia';
|
||||||
|
import { ref, type Ref } from 'vue';
|
||||||
|
|
||||||
|
// 存储按需加载的数据
|
||||||
|
export const useLoadingResourceStore = defineStore('loadingResource', () => {
|
||||||
|
const loadingResource: Ref<Partial<Record<LoadingResource, string[]>>> = ref(
|
||||||
|
{}
|
||||||
|
);
|
||||||
|
|
||||||
|
// 添加数据
|
||||||
|
const addLoadingResource = (key: LoadingResource, value: string[]) => {
|
||||||
|
loadingResource.value[key] = value;
|
||||||
|
};
|
||||||
|
|
||||||
|
// 删除数据
|
||||||
|
const removeLoadingResource = (key: LoadingResource) => {
|
||||||
|
if (Object.hasOwn(loadingResource.value, key)) {
|
||||||
|
delete loadingResource.value[key];
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取数据
|
||||||
|
*/
|
||||||
|
const getLoadingResource = (key: LoadingResource) => {
|
||||||
|
return loadingResource.value[key] || [];
|
||||||
|
};
|
||||||
|
|
||||||
|
return {
|
||||||
|
getLoadingResource,
|
||||||
|
addLoadingResource,
|
||||||
|
removeLoadingResource,
|
||||||
|
};
|
||||||
|
});
|
||||||
+63
-105
@@ -1,131 +1,89 @@
|
|||||||
import { defineStore } from 'pinia';
|
import { defineStore } from 'pinia';
|
||||||
import { type Ref, ref } from 'vue';
|
import { reactive, ref } from 'vue';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 全局状态管理
|
* 全局状态管理
|
||||||
* @returns 应用状态及相关方法
|
* @returns 应用状态及相关方法
|
||||||
*/
|
*/
|
||||||
export const useStatusStore = defineStore('status', () => {
|
export const useStatusStore = defineStore('status', () => {
|
||||||
|
// ============================ 应用级状态 ================================
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 应用加载完成状态
|
* 应用加载完成状态
|
||||||
*/
|
*/
|
||||||
const appLoadingCompleted: Ref<boolean> = ref(false);
|
const appLoadingCompleted = ref(false);
|
||||||
|
|
||||||
|
// ============================ UI 组件显示状态 ================================
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 显示行政区划
|
* UI 组件显示状态集合
|
||||||
*/
|
*/
|
||||||
const showAdministrativeDivision = ref(true);
|
const uiComponents = reactive({
|
||||||
|
/** 图例显示状态 */
|
||||||
|
legendShow: true,
|
||||||
|
/** 灾情链影响点表格显示状态 */
|
||||||
|
disasterChainPointShow: false,
|
||||||
|
});
|
||||||
|
|
||||||
|
// ============================ 地图图层显示状态 ================================
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 灾情链影响点表格显示状态
|
* 地图基础图层显示状态
|
||||||
*/
|
*/
|
||||||
const disasterChainPointShow = ref(false);
|
const mapLayers = reactive({
|
||||||
|
/** 显示行政区划 */
|
||||||
|
showAdministrativeDivision: true,
|
||||||
|
/** 隐患点显示状态 */
|
||||||
|
hiddenDangerPointShow: true,
|
||||||
|
/** 风险点显示状态 */
|
||||||
|
riskPointShow: true,
|
||||||
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 图例显示状态
|
* POI图层显示状态
|
||||||
*/
|
*/
|
||||||
const legendShow = ref(true);
|
const poiLayers = reactive({
|
||||||
|
/** 显示医院 */
|
||||||
|
showHospital: false,
|
||||||
|
/** 显示危险源 */
|
||||||
|
showDangerSource: false,
|
||||||
|
/** 显示避难所 */
|
||||||
|
showRefugeeShelter: false,
|
||||||
|
/** 显示消防站 */
|
||||||
|
showFireStation: false,
|
||||||
|
/** 显示储备点 */
|
||||||
|
showReservePoint: false,
|
||||||
|
/** 显示学校 */
|
||||||
|
showSchool: false,
|
||||||
|
/** 显示人口网格 */
|
||||||
|
showPopulationGrid: false,
|
||||||
|
/** 显示地铁站 */
|
||||||
|
showSubwayStation: false,
|
||||||
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 隐患点显示状态
|
* 基础设施图层显示状态
|
||||||
*/
|
*/
|
||||||
const hiddenDangerPointShow = ref(true);
|
const infrastructureLayers = reactive({
|
||||||
|
/** 显示管网系统 */
|
||||||
/**
|
showNetworkSystem: false,
|
||||||
* 风险点显示状态
|
/** 显示交通道路 */
|
||||||
*/
|
showTrafficRoad: false,
|
||||||
const riskPointShow = ref(true);
|
/** 显示桥梁 */
|
||||||
|
showBridge: false,
|
||||||
/**
|
/** 显示高速 */
|
||||||
* 获取应用加载完成状态
|
showHighway: false,
|
||||||
* @returns 加载完成状态
|
/** 显示国道 */
|
||||||
*/
|
showMainRoad: false,
|
||||||
const getAppLoadingCompleted = () => appLoadingCompleted.value;
|
/** 显示水库 */
|
||||||
/**
|
showReservoir: false,
|
||||||
* 设置应用加载完成状态
|
});
|
||||||
* @param value - 加载完成状态
|
|
||||||
*/
|
|
||||||
const setAppLoadingCompleted = (value: boolean) => {
|
|
||||||
appLoadingCompleted.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取显示行政区划
|
|
||||||
* @returns 显示行政区划
|
|
||||||
*/
|
|
||||||
const getShowAdministrativeDivision = () => showAdministrativeDivision.value;
|
|
||||||
/**
|
|
||||||
* 设置显示行政区划
|
|
||||||
* @param value - 显示行政区划
|
|
||||||
*/
|
|
||||||
const setShowAdministrativeDivision = (value: boolean) => {
|
|
||||||
showAdministrativeDivision.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取灾情链影响点表格显示状态
|
|
||||||
* @returns 灾情链影像点表格显示状态
|
|
||||||
*/
|
|
||||||
const getDisasterChainPointShow = () => disasterChainPointShow.value;
|
|
||||||
/**
|
|
||||||
* 设置灾情链影响点表格显示状态
|
|
||||||
* @param value - 灾情链影像点表格显示状态
|
|
||||||
*/
|
|
||||||
const setDisasterChainPointShow = (value: boolean) => {
|
|
||||||
disasterChainPointShow.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取图例显示状态
|
|
||||||
* @returns 图例显示状态
|
|
||||||
*/
|
|
||||||
const getLegendShow = () => legendShow.value;
|
|
||||||
/**
|
|
||||||
* 设置图例显示状态
|
|
||||||
* @param value - 图例显示状态
|
|
||||||
*/
|
|
||||||
const setLegendShow = (value: boolean) => {
|
|
||||||
legendShow.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取隐患点显示状态
|
|
||||||
* @returns 隐患点显示状态
|
|
||||||
*/
|
|
||||||
const getHiddenDangerPointShow = () => hiddenDangerPointShow.value;
|
|
||||||
/**
|
|
||||||
* 设置隐患点显示状态
|
|
||||||
* @param value - 隐患点显示状态
|
|
||||||
*/
|
|
||||||
const setHiddenDangerPointShow = (value: boolean) => {
|
|
||||||
hiddenDangerPointShow.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取风险点显示状态
|
|
||||||
* @returns 风险点显示状态
|
|
||||||
*/
|
|
||||||
const getRiskPointShow = () => riskPointShow.value;
|
|
||||||
/**
|
|
||||||
* 设置风险点显示状态
|
|
||||||
* @param value - 风险点显示状态
|
|
||||||
*/
|
|
||||||
const setRiskPointShow = (value: boolean) => {
|
|
||||||
riskPointShow.value = value;
|
|
||||||
};
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
getAppLoadingCompleted,
|
appLoadingCompleted,
|
||||||
setAppLoadingCompleted,
|
uiComponents,
|
||||||
getShowAdministrativeDivision,
|
mapLayers,
|
||||||
setShowAdministrativeDivision,
|
poiLayers,
|
||||||
getDisasterChainPointShow,
|
infrastructureLayers,
|
||||||
setDisasterChainPointShow,
|
|
||||||
getLegendShow,
|
|
||||||
setLegendShow,
|
|
||||||
getHiddenDangerPointShow,
|
|
||||||
setHiddenDangerPointShow,
|
|
||||||
getRiskPointShow,
|
|
||||||
setRiskPointShow,
|
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
export enum LoadingResource {
|
||||||
|
/**
|
||||||
|
* 隐患点
|
||||||
|
*/
|
||||||
|
HIDDEN_DANGER_POINT = 'HIDDEN_DANGER_POINT',
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 风险点
|
||||||
|
*/
|
||||||
|
RISK_POINT = 'RISK_POINT',
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 行政区划
|
||||||
|
*/
|
||||||
|
ADMINISTRATIVE_DIVISION = 'ADMINISTRATIVE_DIVISION',
|
||||||
|
}
|
||||||
@@ -21,14 +21,22 @@
|
|||||||
|
|
||||||
<!-- 左侧按钮组件 -->
|
<!-- 左侧按钮组件 -->
|
||||||
<LeftButtonComponent :button-list="leftButtonInfo" />
|
<LeftButtonComponent :button-list="leftButtonInfo" />
|
||||||
|
|
||||||
|
<!-- 右侧按钮组件 -->
|
||||||
|
<RightButtonComponent :button-list="rightButtonInfo" />
|
||||||
|
|
||||||
|
<!-- 控制显示组件 -->
|
||||||
|
<ControlShowComponent :constrol-show-list="controlPanel" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import BasicComponent from '@/component/rain-earthquake/BasicComponent.vue';
|
import BasicComponent from '@/component/rain-earthquake/BasicComponent.vue';
|
||||||
|
import ControlShowComponent from '@/component/rain-earthquake/ControlShowComponent.vue';
|
||||||
import DisasterChainPointComponent from '@/component/rain-earthquake/DisasterChainPointComponent.vue';
|
import DisasterChainPointComponent from '@/component/rain-earthquake/DisasterChainPointComponent.vue';
|
||||||
import LeftButtonComponent from '@/component/rain-earthquake/LeftButtonComponent.vue';
|
import LeftButtonComponent from '@/component/rain-earthquake/LeftButtonComponent.vue';
|
||||||
import LegendComponent from '@/component/rain-earthquake/LegendComponent.vue';
|
import LegendComponent from '@/component/rain-earthquake/LegendComponent.vue';
|
||||||
|
import RightButtonComponent from '@/component/rain-earthquake/RightButtonComponent.vue';
|
||||||
import { useEarthquakeDisasterChain } from '@/hooks/earthquake/useEarthquakeDisasterChain';
|
import { useEarthquakeDisasterChain } from '@/hooks/earthquake/useEarthquakeDisasterChain';
|
||||||
import { useEarthquakeLegend } from '@/hooks/earthquake/useEarthquakeLegend';
|
import { useEarthquakeLegend } from '@/hooks/earthquake/useEarthquakeLegend';
|
||||||
import { DisasterType } from '@/types/common/DisasterType.ts';
|
import { DisasterType } from '@/types/common/DisasterType.ts';
|
||||||
@@ -44,6 +52,8 @@
|
|||||||
tableColumns,
|
tableColumns,
|
||||||
paginationConfig,
|
paginationConfig,
|
||||||
leftButtonInfo,
|
leftButtonInfo,
|
||||||
|
rightButtonInfo,
|
||||||
|
controlPanel,
|
||||||
changeConditions,
|
changeConditions,
|
||||||
changeCurrentPage,
|
changeCurrentPage,
|
||||||
} = useEarthquakeDisasterChain();
|
} = useEarthquakeDisasterChain();
|
||||||
|
|||||||
@@ -24,11 +24,15 @@
|
|||||||
|
|
||||||
<!-- 右侧按钮组件 -->
|
<!-- 右侧按钮组件 -->
|
||||||
<RightButtonComponent :button-list="rightButtonInfo" />
|
<RightButtonComponent :button-list="rightButtonInfo" />
|
||||||
|
|
||||||
|
<!-- 控制显示组件 -->
|
||||||
|
<ControlShowComponent :constrol-show-list="controlPanel" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import BasicComponent from '@/component/rain-earthquake/BasicComponent.vue';
|
import BasicComponent from '@/component/rain-earthquake/BasicComponent.vue';
|
||||||
|
import ControlShowComponent from '@/component/rain-earthquake/ControlShowComponent.vue';
|
||||||
import DisasterChainPointComponent from '@/component/rain-earthquake/DisasterChainPointComponent.vue';
|
import DisasterChainPointComponent from '@/component/rain-earthquake/DisasterChainPointComponent.vue';
|
||||||
import LeftButtonComponent from '@/component/rain-earthquake/LeftButtonComponent.vue';
|
import LeftButtonComponent from '@/component/rain-earthquake/LeftButtonComponent.vue';
|
||||||
import LegendComponent from '@/component/rain-earthquake/LegendComponent.vue';
|
import LegendComponent from '@/component/rain-earthquake/LegendComponent.vue';
|
||||||
@@ -49,6 +53,7 @@
|
|||||||
paginationConfig,
|
paginationConfig,
|
||||||
leftButtonInfo,
|
leftButtonInfo,
|
||||||
rightButtonInfo,
|
rightButtonInfo,
|
||||||
|
controlPanel,
|
||||||
changeConditions,
|
changeConditions,
|
||||||
changeCurrentPage,
|
changeCurrentPage,
|
||||||
} = useRainDisasterChain();
|
} = useRainDisasterChain();
|
||||||
|
|||||||
Reference in New Issue
Block a user