Javascript 如何从Openlayers 3中的图层中查找图层组?
我希望能够在用户交互过程中说出一个层所属的ol.layer.Group,而不必自上而下地查看地图上的所有组Javascript 如何从Openlayers 3中的图层中查找图层组?,javascript,maps,openlayers-3,Javascript,Maps,Openlayers 3,我希望能够在用户交互过程中说出一个层所属的ol.layer.Group,而不必自上而下地查看地图上的所有组 有办法做到这一点吗?我目前正在使用ol3 v3.10.2。查看ol.layer.Group、ol.collection和goog.array,这些都没有设置对该层的向后引用。因此,在我看来,您必须深入挖掘所有组。在初始化层的过程中,在每个层上指定一个属性,以验证该层所属的组。像这样: var vector = new ol.layer.Vector({ GROUP : 'group1'
有办法做到这一点吗?我目前正在使用ol3 v3.10.2。查看ol.layer.Group、ol.collection和goog.array,这些都没有设置对该层的向后引用。因此,在我看来,您必须深入挖掘所有组。在初始化层的过程中,在每个层上指定一个属性,以验证该层所属的组。像这样:
var vector = new ol.layer.Vector({
GROUP : 'group1',
source: vectorSource,
style: new ol.style.Style({
image: new ol.style.Circle({
radius: 5,
fill: new ol.style.Fill({color: '#FFFFFF'}),
stroke: new ol.style.Stroke({
color: '#000000',
width: 3
})
})
})
});
然后你可能会得到这样的群体:
layer.get('GROUP');
这很有效。保留所有组和层id的单独字典也是如此。但这不在库中,这就是为什么我没有将其标记为答案的原因。