From 1820aef3fb5c926664de1d4d484f64a5c9ba7099 Mon Sep 17 00:00:00 2001
From: YANGDL <114714267@qq.com>
Date: 星期二, 05 一月 2021 17:06:08 +0800
Subject: [PATCH] 优化逻辑

---
 src/components/plugin/PathDrag.js |  262 ++++++++++++++++++++++++++--------------------------
 1 files changed, 131 insertions(+), 131 deletions(-)

diff --git a/src/components/plugin/PathDrag.js b/src/components/plugin/PathDrag.js
index c4f2eea..88998a5 100644
--- a/src/components/plugin/PathDrag.js
+++ b/src/components/plugin/PathDrag.js
@@ -1,143 +1,143 @@
 'use strict'
 const init = (L) => {
-    /* A Draggable that does not update the element position
+  /* A Draggable that does not update the element position
     and takes care of only bubbling to targetted path in Canvas mode. */
-    L.PathDraggable = L.Draggable.extend({
+  L.PathDraggable = L.Draggable.extend({
 
-        initialize: function(path) {
-            this._path = path
-            this._canvas = (path._map.getRenderer(path) instanceof L.Canvas)
-            let element = this._canvas ? this._path._map.getRenderer(this._path)._container : this._path._path
-            L.Draggable.prototype.initialize.call(this, element, element, true)
-        },
+    initialize: function (path) {
+      this._path = path
+      this._canvas = (path._map.getRenderer(path) instanceof L.Canvas)
+      const element = this._canvas ? this._path._map.getRenderer(this._path)._container : this._path._path
+      L.Draggable.prototype.initialize.call(this, element, element, true)
+    },
 
-        _updatePosition: function() {
-            let e = { originalEvent: this._lastEvent }
-            this.fire('drag', e)
-        },
+    _updatePosition: function () {
+      const e = { originalEvent: this._lastEvent }
+      this.fire('drag', e)
+    },
 
-        _onDown: function(e) {
-            let first = e.touches ? e.touches[0] : e
-            this._startPoint = new L.Point(first.clientX, first.clientY)
-            if (this._canvas && !this._path._containsPoint(this._path._map.mouseEventToLayerPoint(first))) {
-                return
-            }
-            L.Draggable.prototype._onDown.call(this, e)
+    _onDown: function (e) {
+      const first = e.touches ? e.touches[0] : e
+      this._startPoint = new L.Point(first.clientX, first.clientY)
+      if (this._canvas && !this._path._containsPoint(this._path._map.mouseEventToLayerPoint(first))) {
+        return
+      }
+      L.Draggable.prototype._onDown.call(this, e)
+    }
+
+  })
+
+  L.Handler.PathDrag = L.Handler.extend({
+
+    initialize: function (path) {
+      this._path = path
+    },
+
+    getEvents: function () {
+      return {
+        dragstart: this._onDragStart,
+        drag: this._onDrag,
+        dragend: this._onDragEnd
+      }
+    },
+
+    addHooks: function () {
+      if (!this._draggable) {
+        this._draggable = new L.PathDraggable(this._path)
+      }
+      this._draggable.on(this.getEvents(), this).enable()
+      L.DomUtil.addClass(this._draggable._element, 'leaflet-path-draggable')
+    },
+
+    removeHooks: function () {
+      this._draggable.off(this.getEvents(), this).disable()
+      L.DomUtil.removeClass(this._draggable._element, 'leaflet-path-draggable')
+    },
+
+    moved: function () {
+      return this._draggable && this._draggable._moved
+    },
+
+    _onDragStart: function () {
+      this._startPoint = this._draggable._startPoint
+      this._path
+        .closePopup()
+        .fire('movestart')
+        .fire('dragstart')
+    },
+
+    _onDrag: function (e) {
+      const path = this._path
+      const event = (e.originalEvent.touches && e.originalEvent.touches.length === 1 ? e.originalEvent.touches[0] : e.originalEvent)
+      const newPoint = L.point(event.clientX, event.clientY)
+      const latlng = path._map.layerPointToLatLng(newPoint)
+
+      this._offset = newPoint.subtract(this._startPoint)
+      this._startPoint = newPoint
+
+      this._path.eachLatLng(this.updateLatLng, this)
+      path.redraw()
+
+      e.latlng = latlng
+      e.offset = this._offset
+      path.fire('drag', e)
+      e.latlng = this._path.getCenter ? this._path.getCenter() : this._path.getLatLng()
+      path.fire('move', e)
+    },
+
+    _onDragEnd: function (e) {
+      if (this._path._bounds) this.resetBounds()
+      this._path.fire('moveend')
+        .fire('dragend', e)
+    },
+
+    latLngToLayerPoint: function (latlng) {
+      // Same as map.latLngToLayerPoint, but without the round().
+      const projectedPoint = this._path._map.project(L.latLng(latlng))
+      return projectedPoint._subtract(this._path._map.getPixelOrigin())
+    },
+
+    updateLatLng: function (latlng) {
+      const oldPoint = this.latLngToLayerPoint(latlng)
+      oldPoint._add(this._offset)
+      const newLatLng = this._path._map.layerPointToLatLng(oldPoint)
+      latlng.lat = newLatLng.lat
+      latlng.lng = newLatLng.lng
+    },
+
+    resetBounds: function () {
+      this._path._bounds = new L.LatLngBounds()
+      this._path.eachLatLng(function (latlng) {
+        this._bounds.extend(latlng)
+      })
+    }
+
+  })
+
+  L.Path.include({
+
+    eachLatLng: function (callback, context) {
+      context = context || this
+      const loop = function (latlngs) {
+        for (let i = 0; i < latlngs.length; i++) {
+          if (L.Util.isArray(latlngs[i])) loop(latlngs[i])
+          else callback.call(context, latlngs[i])
         }
+      }
+      loop(this.getLatLngs ? this.getLatLngs() : [this.getLatLng()])
+    }
 
-    })
+  })
 
-    L.Handler.PathDrag = L.Handler.extend({
-
-        initialize: function(path) {
-            this._path = path
-        },
-
-        getEvents: function() {
-            return {
-                dragstart: this._onDragStart,
-                drag: this._onDrag,
-                dragend: this._onDragEnd
-            }
-        },
-
-        addHooks: function() {
-            if (!this._draggable) {
-                this._draggable = new L.PathDraggable(this._path)
-            }
-            this._draggable.on(this.getEvents(), this).enable()
-            L.DomUtil.addClass(this._draggable._element, 'leaflet-path-draggable')
-        },
-
-        removeHooks: function() {
-            this._draggable.off(this.getEvents(), this).disable()
-            L.DomUtil.removeClass(this._draggable._element, 'leaflet-path-draggable')
-        },
-
-        moved: function() {
-            return this._draggable && this._draggable._moved
-        },
-
-        _onDragStart: function() {
-            this._startPoint = this._draggable._startPoint
-            this._path
-                .closePopup()
-                .fire('movestart')
-                .fire('dragstart')
-        },
-
-        _onDrag: function(e) {
-            let path = this._path
-            let event = (e.originalEvent.touches && e.originalEvent.touches.length === 1 ? e.originalEvent.touches[0] : e.originalEvent)
-            let newPoint = L.point(event.clientX, event.clientY)
-            let latlng = path._map.layerPointToLatLng(newPoint)
-
-            this._offset = newPoint.subtract(this._startPoint)
-            this._startPoint = newPoint
-
-            this._path.eachLatLng(this.updateLatLng, this)
-            path.redraw()
-
-            e.latlng = latlng
-            e.offset = this._offset
-            path.fire('drag', e)
-            e.latlng = this._path.getCenter ? this._path.getCenter() : this._path.getLatLng()
-            path.fire('move', e)
-        },
-
-        _onDragEnd: function(e) {
-            if (this._path._bounds) this.resetBounds()
-            this._path.fire('moveend')
-                .fire('dragend', e)
-        },
-
-        latLngToLayerPoint: function(latlng) {
-            // Same as map.latLngToLayerPoint, but without the round().
-            let projectedPoint = this._path._map.project(L.latLng(latlng))
-            return projectedPoint._subtract(this._path._map.getPixelOrigin())
-        },
-
-        updateLatLng: function(latlng) {
-            let oldPoint = this.latLngToLayerPoint(latlng)
-            oldPoint._add(this._offset)
-            let newLatLng = this._path._map.layerPointToLatLng(oldPoint)
-            latlng.lat = newLatLng.lat
-            latlng.lng = newLatLng.lng
-        },
-
-        resetBounds: function() {
-            this._path._bounds = new L.LatLngBounds()
-            this._path.eachLatLng(function(latlng) {
-                this._bounds.extend(latlng)
-            })
-        }
-
-    })
-
-    L.Path.include({
-
-        eachLatLng: function(callback, context) {
-            context = context || this
-            let loop = function(latlngs) {
-                for (let i = 0; i < latlngs.length; i++) {
-                    if (L.Util.isArray(latlngs[i])) loop(latlngs[i])
-                    else callback.call(context, latlngs[i])
-                }
-            }
-            loop(this.getLatLngs ? this.getLatLngs() : [this.getLatLng()])
-        }
-
-    })
-
-    L.Path.addInitHook(function() {
-        this.dragging = new L.Handler.PathDrag(this)
-        if (this.options.draggable) {
-            this.once('add', function() {
-                this.dragging.enable()
-            })
-        }
-    })
+  L.Path.addInitHook(function () {
+    this.dragging = new L.Handler.PathDrag(this)
+    if (this.options.draggable) {
+      this.once('add', function () {
+        this.dragging.enable()
+      })
+    }
+  })
 }
 export default {
-    init
+  init
 }

--
Gitblit v1.8.0