| 258 | } |
| 259 | |
| 260 | _eventsModeHandler({ type, layerId, listener, mode }) { |
| 261 | let layers = []; |
| 262 | if (listener) { |
| 263 | layers = layers.concat(layerId); |
| 264 | } |
| 265 | layers.forEach(id => { |
| 266 | const overlayLayer = this.overlayLayersManager[id] || {}; |
| 267 | if (overlayLayer.interaction && overlayLayer[mode] && (overlayLayer.events === 'all' || overlayLayer.events.includes(type))) { |
| 268 | overlayLayer[mode](type, listener || layerId); |
| 269 | } |
| 270 | }); |
| 271 | const layerIdsOnMap = listener && layers.filter(id => !this.overlayLayersManager[id]); |
| 272 | if (layerIdsOnMap && !layerIdsOnMap.length) { |
| 273 | return this; |
| 274 | } |
| 275 | const nextLayerId = !layerIdsOnMap || typeof layerId === 'string' ? layerId : layerIdsOnMap; |
| 276 | return originMapProto[mode].call(this, type, nextLayerId, listener); |
| 277 | } |
| 278 | |
| 279 | /** |
| 280 | * @description 将图层移动到某个图层之前。 |