当我使用以下代码浏览传单地图中的所有图层时,
map.eachLayer(function (layer) {
console.log(layer);
});
我只想要使用什么规则来创建此订单。是因为图层的ZIndex吗?还是因为图层是在不同的时间添加的?如果提前添加图层,它将位于底部。
谢谢
好问题,似乎 LeafletJS 文档没有说明通过 eachLayer
对层的排序,所以......
查看github上的代码,L.Map.eachLayer循环遍历L.Map._layers哪个对象(而不是数组)。 所以从技术上讲,这些层可以按任何顺序返回......
也就是说,各个图层将按照添加到地图的顺序添加到_layers
对象中。 因此,eachLayer
很可能会以相同的顺序(无论它们添加到地图中的顺序如何)遍历图层。