Я пытаюсь добавить статическую метку в несколько созданных мной CircleMarkers. Эти маркеры добавляются в LayerGroup, а затем добавляются на карту. Я прочитал, что мне нужно вызвать .showLabel() после того, как я добавил его к объекту на карте. Но поскольку я сначала создаю LayerGroup, а затем добавляю его на карту, я не знаю, как это сделать.Как отображать листовые статические метки для объектов в LayerGroup?
Я думал об использовании L.LayerGroup.eachLayer, но я не уверен, какой объект я бы назвал .showLayers(). Мой код ниже, любая помощь приветствуется, спасибо!
var jsonLayers = new L.LayerGroup();
jsonLayers.addLayer(L.geoJson(mapFeature.features[i], {
style: function (feature) {
return feature.properties && feature.properties.style;
},
onEachFeature: onEachFeature,
pointToLayer: function (feature, latlng) {
var newCircle = L.circleMarker(latlng, {
radius: 5,
fillColor: fColor,
color: "#000",
weight: 1,
opacity: 1,
fillOpacity: 0.8
});
newCircle.bindLabel(feature.properties.name, { noHide: true });
return newCircle;
}
}));
map.addLayer(jsonLayers);
При попытке: jsonLayers.eachLayer (функция (слой) { layer.showLabel();} ); Я получаю сообщение об ошибке, которое showLabel не является функцией. – alecdhuse
Согласно https://github.com/Leaflet/Leaflet.label/issues/31, похоже, для CircleMarker это не поддерживается. – alecdhuse
Вы видели https://github.com/Leaflet/Leaflet.label? – gibbocool