每个功能调用两次样式函数

时间:2016-02-06 07:52:39

标签: javascript openlayers-3

我想知道为什么我的样式函数会为添加到图层的每个特征调用两次。这是我的代码:

var features = new ol.Collection(),
layer = new ol.layer.Vector({
    source: new ol.source.Vector({features: features}),
    style: function(feature, resolution){
        console.log("called it"); // <-- called twice for each feature
        return getStyle(feature);  
    }
});
map.addLayer(layer);
var draw = new ol.interaction.Draw({
    features: features,
    type: (geomType)
});         
map.addInteraction(draw);

我无法弄清楚为什么每次向地图添加要素时都会调用样式函数两次。当特征数量增加时,它成为一个问题并且看起来很糟糕。

修改

嗯,我明白了。实际上我提供了不可复制的代码。实际上,我set在样式函数中有一个特征属性。似乎当你使用feature.set(...)时,再次调用样式函数。所以,问题已经解决了。

0 个答案:

没有答案