vue中百度地图使用及自定义点聚合样式
生活随笔
收集整理的這篇文章主要介紹了
vue中百度地图使用及自定义点聚合样式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
百度地圖使用及點聚合功能
由于后臺固定了百度地圖,百度地圖和高德地圖經緯度轉換有次數限制,不能滿足項目的正常運行,所以切換了百度地圖,下面對使用中遇到的問題進行記錄:
安裝及使用百度地圖:
npm install vue-baidu-map --save
在main.js中引入
- 修改地圖的中心點和層級方法 this.map.centerAndZoom(new BMap.Point(lng, lat), zoom)
點聚合
創建點聚合實例
this.pointSimplifierList = new BMapLib.MarkerClusterer(this.map, {markers: [],styles: [{url: require('../../assets/fullPage/distributed/12.png'),//點聚合圖標背景圖size: new BMap.Size(190, 36)//點聚合圖標大小}]})為點聚和填入點數據
drawClusterer(markerArr) {//markerArr是所有點的數組,其中包含了經緯度,點的圖標,類型等const markarr = []for (let i = 0; i < markerArr.length; i++) {const point = new BMap.Point(markerArr[i].lng, markerArr[i].lat) // 循環生成新的地圖點const icon = new BMap.Icon(markerArr[i].icon, new BMap.Size(48, 48))const marker = new BMap.Marker(point, { icon }) // 按照地圖點坐標生成標記marker.info = markerArr[i]const that = thismarker.addEventListener('click', function(e) {//這里可以做點擊效果,如點擊出現詳情彈窗等})markarr.push(marker)}this.pointSimplifierList.addMarkers(markarr) }修改聚合點樣式,增加聚合點其他觸發效果
- 在index.html中引入兩個文件,這里我是把這兩個文件放在和index.html同級了
- 修改這兩個文件
總結
以上是生活随笔為你收集整理的vue中百度地图使用及自定义点聚合样式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AirPods Pro 一直断线?如何修
- 下一篇: 【绿色版软件】出现应用程序无法启动,并行