【问题标题】:What do I replace PointerEvent in OpenLayers 5 with in OL 6?我在 OL 6 中用什么替换 OpenLayers 5 中的 PointerEvent?
【发布时间】:2021-02-04 18:47:12
【问题描述】:

尝试从 OL5.3 升级到 OL6.1,但还不确定如何解决此问题。

https://github.com/openlayers/openlayers/blob/master/changelog/upgrade-notes.md#olinteractionmodifyevent-changes

这涵盖了 MapBrowserPointerEvent 的重命名

import PointerEvent from 'ol/pointer/PointerEvent.js';
import MapBrowserPointerEvent from 'ol/MapBrowserPointerEvent.js';
...

// simulate a click on the map
let event = new PointerEvent('singleclick', {
    clientX: xy[0],
    clientY: xy[1],
    shiftKey: false
});
map.handleMapBrowserEvent(new MapBrowserPointerEvent('singleclick', map, event));

但不确定 new PointerEvent() 需要发生什么,它似乎已包含在更改日志中。

谢谢, -史蒂夫

【问题讨论】:

  • 该更改适用于 v3.17.0

标签: openlayers-5 openlayers-6


【解决方案1】:

这似乎适用于 OL6:

import MapBrowserEvent from 'ol/MapBrowserEvent';
let event = {
    coordinate: pnt,
    map: map,
    target: 'map',
    pixel: xy,
    type: 'singleclick'
};
map.dispatchEvent(event);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-17
    • 1970-01-01
    • 2012-09-09
    • 1970-01-01
    相关资源
    最近更新 更多