Openlayers 3 ForEachLayers像素仅获取层

Openlayers 3 ForEachLayers像素仅获取层,openlayers,openlayers-3,geoserver,ol3-google-maps,Openlayers,Openlayers 3,Geoserver,Ol3 Google Maps,我正在使用Openlayers 3。我在地图上按如下顺序添加了三层WMS:公社、区、省。我在缩放时使用了“ForEachLayerTaxel”来获取当前图层的信息示例:当缩放到图层区域,然后获取信息图层区域,或缩放到图层公社,然后获取信息图层公社时。但它只获取图层区域的信息,当缩放到图层区域时,返回“未定义”。我使用事件“pointermove”在地图上悬停: map.on("pointermove", function (evt) { if (evt.dragging) return;

我正在使用Openlayers 3。我在地图上按如下顺序添加了三层WMS:公社、区、省。我在缩放时使用了“ForEachLayerTaxel”来获取当前图层的信息示例:当缩放到图层区域,然后获取信息图层区域,或缩放到图层公社,然后获取信息图层公社时。但它只获取图层区域的信息,当缩放到图层区域时,返回“未定义”。我使用事件“pointermove”在地图上悬停:

map.on("pointermove", function (evt) {
   if (evt.dragging) return; 
   const hit = map.forEachLayerAtPixel(evt.pixel, (layer) => {
                  if (layer instanceof ol.layer.Tile)
                     return layer;
                  return null;
               });
   console.log(hit);

可能问题是:如何使用forEachLayerAtPixel方法跟踪特定层?
因为显然总是返回未定义的aka变量not set。

您好,您的问题是什么?不要返回图层,否则它将停止搜索。将日志放在回调中。