From d00a9f035aec50c37c8e0a1363a1968672fb875f Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期二, 16 七月 2024 16:58:39 +0800
Subject: [PATCH] 2024.7.16

---
 src/utils/map/marks.js |   36 +++++++++++++++++++++++++++++++-----
 1 files changed, 31 insertions(+), 5 deletions(-)

diff --git a/src/utils/map/marks.js b/src/utils/map/marks.js
index 8882fea..cfb8e3c 100644
--- a/src/utils/map/marks.js
+++ b/src/utils/map/marks.js
@@ -3,6 +3,7 @@
  */
 
 import { map, AMap } from './index'
+import util from './util'
 
 var _massMarks = undefined
 
@@ -70,12 +71,12 @@
     map.add(massMarks)
   },
 
-  createLabelMarks(img, dataList) {
+  createLabelMarks(img, dataList, onClick) {
     const layer = new AMap.LabelsLayer({
       zooms: [3, 20],
       zIndex: 1000,
       // 寮�鍚爣娉ㄩ伩璁╋紝榛樿涓哄紑鍚紝v1.4.15 鏂板灞炴��
-      collision: true,
+      collision: false,
       // 寮�鍚爣娉ㄦ贰鍏ュ姩鐢伙紝榛樿涓哄紑鍚紝v1.4.15 鏂板灞炴��
       animation: true
     })
@@ -96,7 +97,7 @@
           image: img,
           // clipOrigin: [14, 92],
           // clipSize: [50, 68],
-          size: [30, 30],
+          size: [20, 20],
           anchor: 'bottom-center',
           angel: 0,
           retina: true
@@ -106,7 +107,7 @@
           direction: 'top',
           offset: [0, -5],
           style: {
-            fontSize: 16,
+            fontSize: 12,
             fontWeight: 'normal',
             fillColor: '#fff',
             strokeColor: '#333',
@@ -116,10 +117,21 @@
         }
       }
       curData.extData = {
-        index: i
+        data: data
       }
 
       var labelMarker = new AMap.LabelMarker(curData)
+      labelMarker.on('click', (event) => {
+        console.log(labelMarker.getExtData())
+        console.log(event)
+        util.setFitView([event.target])
+        // util.setZoomSmall()
+        // util.setCenter(event.lnglat)
+        // 鑷畾涔夌偣鍑讳簨浠�
+        if (typeof onClick === 'function') {
+          onClick(event.data.data.extData.data)
+        }
+      })
 
       // markers.push(labelMarker);
 
@@ -127,5 +139,19 @@
     }
 
     return layer
+  },
+
+  drawMarker(title, lnglat, img) {
+    const marker = new AMap.Marker({
+      position: new AMap.LngLat(lnglat[0], lnglat[1]), // 缁忕含搴﹀璞★紝涔熷彲浠ユ槸缁忕含搴︽瀯鎴愮殑涓�缁存暟缁刐116.39, 39.9]
+      title: title,
+      // offset: new AMap.Pixel(-13, -12),
+      // anchor: 'center',
+      icon: new AMap.Icon({
+        image: img,
+        imageSize: [30, 30]
+      })
+    })
+    map.add(marker)
   }
 }

--
Gitblit v1.9.3