Browse Source

修复点击后出现多个打点图标后无法取消

Hwf 1 month ago
parent
commit
a8ef5a5d7a

+ 1 - 1
src/components/HKVideo/index2.vue

@@ -348,7 +348,7 @@ defineExpose({
       width: 14px;
       height: 14px;
       cursor: pointer;
-      margin-left: 20px;
+      margin-left: 6px;
     }
   }
 }

+ 2 - 0
src/store/modules/map.ts

@@ -178,6 +178,8 @@ export const useMapStore = defineStore('map', () => {
       activeIndex: 0,
       menuData: []
     };
+    pointType.value = [];
+    setPointOption();
   };
   const setUpdateAddress = (data) => {
     updateAddress.value = data;

+ 6 - 2
src/types/components.d.ts

@@ -27,6 +27,8 @@ declare module 'vue' {
     ElAutocomplete: typeof import('element-plus/es')['ElAutocomplete']
     ElBadge: typeof import('element-plus/es')['ElBadge']
     ElButton: typeof import('element-plus/es')['ElButton']
+    ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
+    ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
     ElCol: typeof import('element-plus/es')['ElCol']
     ElColorPicker: typeof import('element-plus/es')['ElColorPicker']
     ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
@@ -41,6 +43,7 @@ declare module 'vue' {
     ElForm: typeof import('element-plus/es')['ElForm']
     ElFormItem: typeof import('element-plus/es')['ElFormItem']
     ElIcon: typeof import('element-plus/es')['ElIcon']
+    ElImage: typeof import('element-plus/es')['ElImage']
     ElInput: typeof import('element-plus/es')['ElInput']
     ElMenu: typeof import('element-plus/es')['ElMenu']
     ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
@@ -50,12 +53,13 @@ declare module 'vue' {
     ElRow: typeof import('element-plus/es')['ElRow']
     ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
     ElSelect: typeof import('element-plus/es')['ElSelect']
+    ElSlider: typeof import('element-plus/es')['ElSlider']
     ElSubMenu: typeof import('element-plus/es')['ElSubMenu']
     ElSwitch: typeof import('element-plus/es')['ElSwitch']
-    ElTable: typeof import('element-plus/es')['ElTable']
-    ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
     ElTag: typeof import('element-plus/es')['ElTag']
     ElText: typeof import('element-plus/es')['ElText']
+    ElTimeline: typeof import('element-plus/es')['ElTimeline']
+    ElTimelineItem: typeof import('element-plus/es')['ElTimelineItem']
     ElTooltip: typeof import('element-plus/es')['ElTooltip']
     ElTree: typeof import('element-plus/es')['ElTree']
     ElUpload: typeof import('element-plus/es')['ElUpload']

+ 0 - 2
src/views/globalMap/LeftMenu.vue

@@ -274,8 +274,6 @@ const handleShowDialog = (row) => {
 // 取消所有勾选
 const handleCancelAllChecked = () => {
   mapStore.handleCancelAllChecked();
-  // 清空所有打点
-  mapUtils.clearMarker('point');
 };
 defineExpose({ setMenuChange, setMenuIndex });
 </script>

+ 4 - 0
src/views/globalMap/index.vue

@@ -186,6 +186,10 @@ const addMarkersMethod = debounce(
       queryParams.latitude_min = lnglat2[1];
     }
     getPointInfo2(queryParams).then((res) => {
+      // 如果接口返回前,取消所有选择,不赋值
+      if (!mapStore.pointParams.option && !mapStore.pointParams.dict_value.toString()) {
+        return;
+      }
       const data = res.data ? res.data : [];
       // 通用详情
       if (!!detailsData.value.id) {