我很难弄清如何使用forEachFeatureAtPixel方法过滤图层。我已经查阅了文档,但迄今没有成功。基本上,我想要在事件(例如“点击”)上过滤图层并应用覆盖样式,或更准确地说,我想使用此example实现悬停效果,但只针对单个图层。
在上面的示例中,它被用于获取要素:
然后,我尝试了这样
在上面的示例中,它被用于获取要素:
var feature = map.forEachFeatureAtPixel(pixel, function(feature) {
return feature;
});
我想通过使用图层过滤器来微调代码,但是我遇到了syntax Uncaught SyntaxError: Unexpected token (
语法错误:
var features = map.getFeaturesAtPixel(pixel, function(features) {
layerFilter: function(layer) {
return layer.get('layer_name') === 'someName';
}
});
然后,我尝试了这样
var feature = map.forEachFeatureAtPixel(pixel, {
layerFilter: function(layer) {
return layer.get('layer_name') === 'someName';
}
});
但是我遇到了Uncaught TypeError: d.call不是一个函数
的错误。
我正在使用文档,但说实话,我有点难以阅读和实现一些方法API