当我使用以下代码浏览传单地图中的所有图层时,
map.eachLayer(function (layer) {
console.log(layer);
});
我只是想用什么规则来创建这个订单。是因为图层的ZIndex?或者是因为在不同的时间添加图层?如果早期添加图层,它将位于底部。
谢谢,
答案 0 :(得分:1)
好问题,似乎LeafletJS docs没有说明通过eachLayer
对图层进行排序的事情,所以......
查看github上的代码,L.Map.eachLayer遍历L.Map._layers,这是一个对象(不是数组)。从技术上讲,层可以回来in any order ......
也就是说,各个图层按照它们添加到地图的顺序added到_layers
个对象。因此,eachLayer
很可能会以相同的顺序迭代各层(无论它们被添加到地图中的顺序如何)。