我試圖爲傳單geoJson圖層上的每個點設置不同的divIcon。我已經在太陽下嘗試過所有的東西,但它對我來說不起作用。這是我在做什麼爲每個功能提供定製divIcon的傳單geojson圖層
geoJsonLayer = L.geoJson(null, {
pointToLayer: function(feature, latlng) {
var smallIcon = L.DivIcon.extend({
options: {
iconSize: [27, 27],
html: "<div>" + feature.properties.FEATURE_STYLE.SVG_ELEMENT + "</div>"
}
});
return L.marker(latlng, {icon: new smallIcon()});
},
style: getLayerStyle,
onEachFeature: setFeatureProperties,
});
geoJsonLayer.addTo(baseMap);
feature.properties.FEATURE_STYLE.SVG_ELEMENT是包含圖標的HTML <svg>
。
圖標顯示正常,但是每個功能都顯示相同的圖標。
我也試着做以下幾點:
- 使用L.Icon不同巴紐在iconUrl的每個功能使用L.circleMarker用不同的顏色爲每個
- 功能
它們都按預期工作(每個功能不同的顏色/圖標)。但我似乎無法讓divIcon爲每個功能顯示不同的內容。
任何人都知道爲什麼會出現這種情況?
在此先感謝。
UPDATE:
This is what feature.properties.FEATURE_STYLE.SVG_ELEMENT looks like
請在您的問題的正文中包含仍然重現問題的小代碼(如您的SVG)。請參閱[MCVE](https://stackoverflow.com/help/mcve)。 – ghybs
我正在使用的svg位於上面的pastebin鏈接中:「這是feature.properties.FEATURE_STYLE.SVG_ELEMENT的外觀」。包含在代碼標籤中對我來說太長了。謝謝。 – TaraC
考慮重構您的SVG,以獲得仍能再現問題的最小值。我相信你可以通過這樣做來發現事情。 – ghybs