Я вижу, что OpenLayers 5.3.0 использует наблюдаемые объекты. Документы также освещать события.
Как бы я изменил этот начальный пример на .subscribe() для событий в целом? Я изо всех сил пытаюсь преодолеть разрыв между документами и использованием.
import Map from 'ol/Map';
import View from 'ol/View';
import TileLayer from 'ol/layer/Tile';
import XYZ from 'ol/source/XYZ';
new Map({
target: 'map',
layers: [
new TileLayer({
source: new XYZ({
url: 'https://{a-c}.tile.openstreetmap.org/{z}/{x}/{y}.png'
})
})
],
view: new View({
center: [0, 0],
zoom: 2
})
});
У меня есть видел примеры со старыми версиями OpenLayers, которые здесь могут не применяться. По крайней мере, в приведенном выше примере «eventListeners» не указан как свойство в 5.3.0 и кажется старым и связанным с обратным вызовом (не наблюдаемым).
Я видел более свежий похожий вопрос здесь с перечисленными полезными ресурсами. Я мог бы использовать пример сценария, чтобы помочь начать работу.
Ага! да. Это было просто. Спасибо, что нашли этот пример. Если вы поместите это в ответ, он получит баллы.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете регистрировать события, например, на карте. В последние примеры есть пример для событие завершения движения.
var map = new Map({
layers: [
new TileLayer({
source: new OSM()
})
],
target: 'map',
view: new View({
center: [0, 0],
zoom: 2
})
});
map.on('moveend', function(evt){console.info(evt);});
Вы имеете в виду что-то вроде этого: openlayers.org/en/latest/examples/moveend.html ?