如何与类似于OpenLayers.control.WMSGetFeatureInfo的WMSGetFeatureInfo一起使用,在这里我无需编写map.on singleclick函数

时间:2019-09-26 11:51:36

标签: openlayers-3

我正在将我的应用程序从OpenLayers2移植/升级到OpenLayers 4。为了获取矢量信息,我使用了

var info = new OpenLayers.Control.WMSGetFeatureInfo({..... eventListeners: {
                                    getfeatureinfo: function (event) {....

,然后使用map.addcontrol(info);将信息添加到地图控件 当我单击地图时,事件即将到getfeatureinfo....

类似的事情我该如何在ol4中执行?

谢谢。

我认为我们可以通过map.on('singleclick....来做到这一点,但是这类调用在应用程序中已超过1000个,因此我需要捕获许多if / else语句。还有其他方法吗?

var info = new OpenLayers.Control.WMSGetFeatureInfo({
                                title: 'Identify features by clicking',                                
                                queryVisible: true,
                                layers: [lObj], //wmsLayers,
                                layerUrls: ["http://" + ipaddressport + "/geoserver/wms"],
                                maxFeatures: 10000,
                                vendorParams: {
                                    buffer: 50,
                                    viewparams: vparams
                                },
                                eventListeners: {
                                    getfeatureinfo: function (event) {
                                        if (event.features.length > 0) {

0 个答案:

没有答案