From 113529424720f87ceb2e4604a4d2e1019e0db4f8 Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期一, 29 四月 2024 13:58:40 +0800 Subject: [PATCH] 新增菜单按钮 --- src/utils/map/toolbox.js | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 53 insertions(+), 3 deletions(-) diff --git a/src/utils/map/toolbox.js b/src/utils/map/toolbox.js index 0baffa5..ba75d5d 100644 --- a/src/utils/map/toolbox.js +++ b/src/utils/map/toolbox.js @@ -2,27 +2,77 @@ import { map, satellite, controlbar } from './index_old'; // import '@/lib/jquery-3.5.1.min'; +/** + * 鍧愭爣鎷惧彇榧犳爣鐐瑰嚮鍥炶皟浜嬩欢 + */ +var _locationMarker, _locationText; +function _coorPickListener(e) { + var text = `缁忓害: ${e.lnglat.getLng()}<br/>绾害: ${e.lnglat.getLat()}`; + if (_locationMarker == undefined) { + var textM = new AMap.Text({ + style: { + 'font-size': '12px' + }, + text: text, + position: e.lnglat, + offset: new AMap.Pixel(0, 30) + }); + + var marker = new AMap.Marker({ + position: e.lnglat + // icon: icon, + // anchor: 'top-center', + // content: '<i class="fa fa-map-marker fa-2x" style="color: #E6DB06;" aria-hidden="true"></i>' + }); + map.add(marker); + map.add(textM); + _locationMarker = marker; + _locationText = textM; + } else { + _locationMarker.setPosition(e.lnglat); + _locationText.setPosition(e.lnglat); + _locationText.setText(text); + } +} + export default { /** * 寮�鍏冲湴鐗╂爣娉� * @param {boolean} value */ - toggleFeatures: (value) => { + toggleFeatures(value) { value ? map.setFeatures(['bg', 'road', 'point', 'building']) : map.setFeatures(['bg', 'road']); }, /** * 寮�鍏冲崼鏄熷湴鍥� + * @param {boolean} value */ - toggleSatellite: (value) => { + toggleSatellite(value) { value ? satellite.show() : satellite.hide(); }, /** * 寮�鍏虫帶鍒剁綏鐩� + * @param {boolean} value */ - toggleControlbar: (value) => { + toggleControlbar(value) { // value ? controlbar.show() : controlbar.hide(); value ? $('.amap-controlbar').show() : $('.amap-controlbar').hide(); + }, + + /** + * 寮�鍏冲潗鏍囨嬀鍙� + * @param {boolean} value + */ + toggleCoorPicking(value) { + if (value) { + map.on('click', _coorPickListener); + } else { + map.off('click', _coorPickListener); + map.remove([_locationMarker, _locationText]); + _locationMarker = undefined; + _locationText = undefined; + } } }; -- Gitblit v1.9.3