From 4df0471b7dff0494625ff09969b1a13b5359a26e Mon Sep 17 00:00:00 2001 From: XingChuan <m17600301067@163.com> Date: 星期一, 31 五月 2021 22:41:47 +0800 Subject: [PATCH] 统计表弹框UI优化;增加点击企业名称缩放至企业;二级表展示功能优化。 --- src/components/plugin/MakeTation.js | 184 +++++++++++++++++++++++++++++++-------------- 1 files changed, 125 insertions(+), 59 deletions(-) diff --git a/src/components/plugin/MakeTation.js b/src/components/plugin/MakeTation.js index 5bc8ac3..9ad3996 100644 --- a/src/components/plugin/MakeTation.js +++ b/src/components/plugin/MakeTation.js @@ -1,59 +1,125 @@ -/* eslint-disable */ -// 娣诲姞鏂囧瓧鏍囨敞 -var TextAnnotation = { - points: [], - color: 'yellow', - L: null, - map: null, - layers: null, - polyline: null, - marker: null, - init: function (map, L) { - // console.log(L) - TextAnnotation.L = L - TextAnnotation.map = map - TextAnnotation.points = [] - TextAnnotation.polyline = null - TextAnnotation.marker = null - TextAnnotation.layers = L.layerGroup() - map.on('click', TextAnnotation.click).on('dblclick', TextAnnotation.dblclick) - }, - click: function (e) { - // console.log(e) - let contents = 'bouncedText' - let labIcon = L.divIcon({ - html: '<div style="color: red;font-size: 18px;">' + contents + '</div>', - iconSize: [100, 40], - iconAnchor: [0, 0], - className: '' - }) - let marker = L.marker(e.latlng, { icon: labIcon }) - marker.addTo(TextAnnotation.map) - }, - dblclick: function (e) { - TextAnnotation.map.off('click', TextAnnotation.click).off('dblclick', TextAnnotation.dblclick) - }, - destory: function () { - if (TextAnnotation.polyline) { - TextAnnotation.map.removeLayer(TextAnnotation.polyline) - } - if (TextAnnotation.marker) { - TextAnnotation.marker.remove() - } - if (TextAnnotation.layers) { - TextAnnotation.layers.clearLayers() - } - } -} - -const startMakeText = function (map, L) { - TextAnnotation.init(map, L) -} - -const clearText = function () { - startMakeText.destory() -} -export default { - startMakeText, - clearText -} +/* eslint-disable */ +// 娣诲姞鏂囧瓧鏍囨敞 +var TextAnnotation = { + points: [], + color: '', + L: null, + map: null, + layers: null, + polyline: null, + marker: null, + changeColor: '', + changeContent: '', + init: function (map, L) { + // console.log(L) + TextAnnotation.L = L + TextAnnotation.map = map + TextAnnotation.points = [] + TextAnnotation.polyline = null + TextAnnotation.marker = null + TextAnnotation.layers = L.layerGroup() + map.on('click', TextAnnotation.click).on('dblclick', TextAnnotation.dblclick) + }, + // 璁剧疆鏀瑰彉鏂囧瓧鍐呭 + setContent: function (changeContent) { + // console.log(changeContent) + TextAnnotation.changeContent = changeContent + }, + // 璁剧疆鏀瑰彉鏂囧瓧棰滆壊 + setColor: function (changeColor) { + // console.log(changeColor) + TextAnnotation.changeColor = changeColor + }, + click: function (e) { + // console.log(TextAnnotation.changeContent) + let labIcon = L.divIcon({ + html: '<div style="color:' + TextAnnotation.changeColor + ';font-size: 18px;">' + TextAnnotation.changeContent + '</div>', + iconSize: [100, 40], + iconAnchor: [0, 0], + className: '' + }) + let marker = L.marker(e.latlng, { icon: labIcon }) + marker.addTo(TextAnnotation.map) + }, + dblclick: function (e) { + TextAnnotation.map.off('click', TextAnnotation.click).off('dblclick', TextAnnotation.dblclick) + }, + destory: function () { + if (TextAnnotation.polyline) { + TextAnnotation.map.removeLayer(TextAnnotation.polyline) + } + if (TextAnnotation.marker) { + TextAnnotation.marker.remove() + } + if (TextAnnotation.layers) { + TextAnnotation.layers.clearLayers() + } + } +} + +// 娣诲姞 鐐� 鐨勬爣娉� +let pointAnnotation = { + points: [], + color: '', + L: null, + map: null, + layers: null, + polyline: null, + marker: null, + init: function (map, L) { + pointAnnotation.L = L + pointAnnotation.map = map + pointAnnotation.points = [] + pointAnnotation.polyline = null + pointAnnotation.marker = null + pointAnnotation.layers = L.layerGroup() + map.on('click', pointAnnotation.click).on('dblclick', pointAnnotation.dblclick) + }, + click: function (e) { + let marker = L.marker(e.latlng) + marker.addTo(pointAnnotation.map) + }, + dblclick: function (e) { + pointAnnotation.map.off('click', pointAnnotation.click).off('dblclick', pointAnnotation.dblclick) + }, + destory: function () { + if (pointAnnotation.polyline) { + pointAnnotation.map.removeLayer(pointAnnotation.polyline) + } + if (pointAnnotation.marker) { + pointAnnotation.marker.remove() + } + if (pointAnnotation.layers) { + pointAnnotation.layers.clearLayers() + } + } +} + +// 娣诲姞鏂囧瓧鏍囨敞 +const startMakeText = function (map, L) { + TextAnnotation.init(map, L) +} +// 鏂囧瓧鏍囨敞鐨� 鍐呭绀捐缃� +const setContentText = function (text) { + TextAnnotation.setContent(text) +} +// 鏂囧瓧鏍囨敞鍐呭鐨� 棰滆壊 璁剧疆 +const setContentColor = function (color) { + TextAnnotation.setColor(color) +} + +// 鐐� 鏍囨敞 +const StartPointAnnotation = function (map, L) { + pointAnnotation.init(map, L) +} + +const clearText = function () { + startMakeText.destory() +} +export default { + clearText, + startMakeText, + setContentText, + setContentColor, + StartPointAnnotation +} -- Gitblit v1.8.0