if (ol.Map.prototype.getLayerByName === undefined) {
ol.Map.prototype.getLayerByName = function (name) {
var layer;
this.getLayers().forEach(function (lyr) {
if (name == lyr.name) {
layer = lyr;
}
});
return layer;
}
}
在添加layer之前先给它设置一个name,如
heatMap.name='heatmap';
map.addLayer(heatMap);
这样之后就能直接使用了,如
var layer = map.getLayerByName('heatmap');
可以指定name或者id,或者其它的属性。