From 72c9ddc3256c4cd4c3db2bd1fb2510bc29bb2515 Mon Sep 17 00:00:00 2001
From: zhangxiaoxu123 <819527061@qq.com>
Date: 星期四, 06 七月 2023 08:48:18 +0800
Subject: [PATCH] 地图标点

---
 src/pages/show/showIndex/showIndex.vue |   82 +++++++++++++++++++++++++---------------
 1 files changed, 51 insertions(+), 31 deletions(-)

diff --git a/src/pages/show/showIndex/showIndex.vue b/src/pages/show/showIndex/showIndex.vue
index 501ac81..e291947 100644
--- a/src/pages/show/showIndex/showIndex.vue
+++ b/src/pages/show/showIndex/showIndex.vue
@@ -61,7 +61,7 @@
                 uploadVisiable:false,  //涓婁紶鏂囦欢寮规
                 timer:null,
                 mapData:[],
-                map:{}
+                map:''
             }
         },
         destroyed() {
@@ -82,14 +82,14 @@
         },
         methods: {
             initMap() {
-                let map = new window.BMap.Map("map");
+                this.map = new window.BMap.Map("map");
                 console.log(map,'map===')
-                map.centerAndZoom(new BMap.Point(118.183450598,39.6505309225), 11)
+                this.map.centerAndZoom(new BMap.Point(118.183450598,39.6505309225), 11)
                 //map.enableScrollWheelZoom(true)    //榧犳爣婊氬姩缂╂斁
-                map.setCurrentCity('鍞愬北')   // 璁剧疆鍦板浘鏄剧ず鐨勫煄甯� 姝ら」鏄繀椤昏缃殑
-                map.enableScrollWheelZoom(true) //寮�鍚紶鏍囨粴杞缉鏀�
+                this.map.setCurrentCity('鍞愬北')   // 璁剧疆鍦板浘鏄剧ず鐨勫煄甯� 姝ら」鏄繀椤昏缃殑
+                this.map.enableScrollWheelZoom(true) //寮�鍚紶鏍囨粴杞缉鏀�
                 //this.getMapData()
-                //this.addMarker()
+                this.addMarker()
 
             },
             uploadClick(type) {
@@ -125,9 +125,8 @@
 
             addMarker() {
                 let BMap = window.BMap
-                let map = new window.BMap.Map("map");
+                this.map.clearOverlays() // 娓呴櫎鍦板浘涓婃墍鏈夎鐩栫墿
                 //let map = new window.BMap.Map("map");
-                let BMapLib = window.BMapLib
                 let mapMarkers = []
                 this.mapData = [{
                     lon:118.167201,
@@ -137,17 +136,22 @@
                 },{
                     lon:118.15782,
                     lat:39.63102,
-                    address: '娌冲寳鐪佸攼灞卞競寮�骞冲尯涓滆タ澶ц199鍙�',
+                    address: '娌冲寳鐪佸攼灞卞競璺崡鍖烘柊鍗庤タ閬�76鍙�4灞�',
                     health: '0'
                 },{
                     lon:118.09289,
                     lat:39.58163,
-                    address: '娌冲寳鐪佸攼灞卞競寮�骞冲尯涓滆タ澶ц199鍙�',
+                    address: '娌冲寳鐪佸攼灞卞競涓板崡鍖烘鑻戝ぇ琛�7鍙�',
                     health: '0'
                 },{
                     lon:118.145069,
                     lat:39.662586,
-                    address: '娌冲寳鐪佸攼灞卞競寮�骞冲尯涓滆タ澶ц199鍙�',
+                    address: '娌冲寳鐪佸攼灞卞競涓版鼎鍖烘浌闆姽澶ц17鍙�',
+                    health: '0'
+                },{
+                    lon:118.45153,
+                    lat:39.74049,
+                    address: '娌冲寳鐪佸攼灞卞競鍙ゅ喍鍖烘案鐩涜矾',
                     health: '0'
                 }]
                 // this.mapData.forEach(item => {
@@ -187,8 +191,8 @@
 
                         let point = new BMap.Point(longitude,latitude)
                         let marker = new BMap.Marker(point,{icon:myIcon})
-                        map.addOverlay(marker)
-                        map.setZoom(11)
+                        this.map.addOverlay(marker)
+                        this.map.setZoom(11)
                         // 娣诲姞榧犳爣鍒掑叆鍧愭爣鐐圭殑鏄剧ず鍐呭
                         let isH = ''
                         if(item.health == 0) {
@@ -220,25 +224,41 @@
                         // 榛樿涓嶆樉绀烘枃鏈爣娉�
                         label.hide()
                         // 鍦ㄥ叏鏅満鏅唴娣诲姞瑕嗙洊鐗�
-                        map.addOverlay(label);
-                        /*marker.addEventListener('mouseover', function () {
-                            console.log(marker,'marker==')
-                            //榧犳爣绉诲叆鍔ㄧ敾
-                            let divElement = document.createElement('div')
-                            divElement.className = 'before'
-                            let divElement2 = document.createElement('div')
-                            divElement2.className = 'after'
-                            marker.hd.innerHtml = marker.hd.childNodes[0]
-                            marker.hd.appendChild(divElement)
-                            marker.hd.appendChild(divElement2)
-                            marker.hd.className = ''
-                            marker.hd.className = 'mapBGFault'
-                            label.show()
+                        this.map.addOverlay(label);
+
+
+                        marker.addEventListener("click", (e)=> {
+                            let p = e.target;
+                            let point = new BMap.Point(p.getPosition().lng, p.getPosition().lat);
+                            let infoWindow = new BMap.InfoWindow(str, {
+                                // width: 320, // 淇℃伅绐楀彛瀹藉害
+                                // height: 200, // 淇℃伅绐楀彛楂樺害
+                                // title: '鐩戞帶淇℃伅', // 淇℃伅绐楀彛鏍囬ee
+                                enableMessage: false, //璁剧疆鍏佽淇℃伅绐楀彂閫佺煭鎭�
+                                str,
+                            }); // 鍒涘缓淇℃伅绐楀彛瀵硅薄
+                            this.map.openInfoWindow(infoWindow, point); //寮�鍚俊鎭獥鍙�
                         })
-                        marker.addEventListener('mouseout', function () {
-                            marker.hd.className = ''
-                            label.hide()
-                        })*/
+
+                        // marker.addEventListener('mouseover', function () {
+                        //     alert(marker)
+                        //     console.log(marker,'marker==')
+                        //     //榧犳爣绉诲叆鍔ㄧ敾
+                        //     let divElement = document.createElement('div')
+                        //     divElement.className = 'before'
+                        //     let divElement2 = document.createElement('div')
+                        //     divElement2.className = 'after'
+                        //     marker.hd.innerHtml = marker.hd.childNodes[0]
+                        //     marker.hd.appendChild(divElement)
+                        //     marker.hd.appendChild(divElement2)
+                        //     marker.hd.className = ''
+                        //     marker.hd.className = 'mapBGFault'
+                        //     label.show()
+                        // })
+                        // marker.addEventListener('mouseout', function () {
+                        //     marker.hd.className = ''
+                        //     label.hide()
+                        // })
 
                     }
                 })

--
Gitblit v1.9.1