如何使用Feature on方法在OpenLayers Feature上添加事件?这对我不起作用。
import { Map, View, Feature } from 'ol';
import {getVectorContext} from 'ol/render';
import TileLayer from 'ol/layer/Tile';
import * as layer from 'ol/layer';
import VectorImage from 'ol/layer/VectorImage';
import * as source from 'ol/source';
import * as proj from 'ol/proj';
import * as geom from 'ol/geom';
import * as style from 'ol/style';
import EventType from 'ol/events/EventType';
const marker = new Feature({
geometry: new geom.Point(
proj.fromLonLat(lonLat)
)
});
// marker.setStyle(this.getIconStyle());
marker.on(EventType.CLICK, function() {
alert('click');
});
答案 0 :(得分:0)
功能没有点击事件,您需要侦听地图上的点击并检查它是否在您的标记上
map.on('click', function(evt) {
if (map.forEachFeatureAtPixel(evt.pixel,
function(feature) {
return feature === marker;
})
) {
alert('click');
}
});