Hi,
There is no order by geometry type in a legend created with a legend widget.
How layers can be ordered? Generally, we need to implement the rule:
- points
- lines
- polygons
bottom - polygons.
Any help will be appreciated.
See this discussion: https://community.esri.com/message/80485
Thank you for response, Panagiotis Papadopoulos.
Unfortunately, we have no geometry type when working with ArcGISDynamicMapServiceLayer.
So, how we obtain that geometryType?
this is a sample code
...... //add the legend map.on("layers-add-result", function (evt) { var layerInfoLines = []; arrayUtils.map(evt.layers, function (layer, index) { if (layer.layer.geometryType === "esriGeometryPolyline"){ layerInfoLines.push({layer:layer.layer, title:layer.layer.name}); } }); var layerInfoPolygons = []; arrayUtils.map(evt.layers, function (layer, index) { if (layer.layer.geometryType === "esriGeometryPolygon"){ layerInfoPolygons.push({layer:layer.layer, title:layer.layer.name}); } }); var layerInfo = layerInfoPolygons.concat(layerInfoLines); if (layerInfo.length > 0) { var legendDijit = new Legend({ map: map, layerInfos: layerInfo }, "legendDiv"); legendDijit.startup(); } });
.....
and here see a live sample
Edit fiddle - JSFiddle
the property define the layer order on Legend Widget according to the Javascript Help is the LayerInfos
see below.
<SPAN class=""><A href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object" style="color: #00629b;" rel="nofollow noopener noreferrer">Object[]</A></SPAN>
layerInfos
So during the layer load on the map change the layer order.
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.