dojo.forEach(map.layerIds, function(layerId) { var legendRequest = esri.request({ url: map.getLayer(layerId).url + "/legend?f=json", handleAs: "json" }); legendRequest.then( // if the legend REST service succeeds, create the placeholder for each layer legend function(data) { if (data && data.layers && data.layers.length > 0) { // create the placeholder for each layer legend loadLegend(data.layers, layerId); } }, function(error) { console.log(error); }); }); // legendNode is the container node for the legend loadLegend: function(layers, svcLayerId) { dojo.forEach(layers, function(layer) { var legends = layer.legend; if (legends.length > 0) { var newLegendContainer = dojo.create("div", {className: "clsLegendNodeContainer"}, legendNode); var newLegendLayerName = dojo.create("div", {className: "clsLegendLayerName", innerHTML: layer.displayName || layer.layerName}, newLegendContainer); var newLegend, newLabel, imageSrc; dojo.forEach(legends, function(aLegend) { newLegend = dojo.create("div", {className: "clsLayerLegend"}, newLegendContainer); imageSrc = "data:" + aLegend.contentType + ";base64," + aLegend.imageData; dojo.create("img", {src: imageSrc}, newLegend); dojo.create("label", {className: "clsLegendLabel", innerHTML: aLegend.label}, newLegend); }); } }); }
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.