5

Leaflet LayerGroupのレイヤー数を取得する簡単な方法はありますか?ドキュメントを一目見ただけでは、現時点では存在しないことがわかります。

4

3 に答える 3

8

更新された回答

私の最初の答え以来、はメソッドでLayerGroup拡張されておりgetLayers()、ソリューションは簡単です。

layerGroup.getLayers().length


**古い**冗長な回答:

LayerGroupコードを見ると、レイヤーの数をで取得できるはずですlayerGroup._layers.length

ただし_layers、実装者は非公開にすることを目的としているため、これが将来のバージョンで機能するかどうかはわかりません。

パブリックAPI内にとどまりたい場合はeachLayer、レイヤーを呼び出してカウントできます。

于 2012-08-31T07:47:10.603 に答える
2

Asbornが示唆したように、任意のレイヤーイベントオブジェクトを介してマップレイヤーオブジェクトにアクセスできます。

例えば

map.addEventListener('viewreset', function(event){
    console.log(event.target._layers);
}, false);

キーを数えるために必要な長さを取得するには、ECMA(chrome、nodeなど)を使用するのが最も簡単な方法です。

Object.keys(map._layers).length

このような情報を取得するためのAPIがないことに驚いています。

maps.getLayers();

:)

編集:実際にはあります:http://leafletjs.com/reference.html#layergroup

getLayers()

そして、そのグループ内のレイヤーの配列を返します。

于 2013-08-15T11:20:12.717 に答える
0

変数名、関数名、リーフレットレイヤー名を入力するだけで、リーフレットなどに関連するすべての関数を簡単に取得できます。

 here I used google chrome console manager.
 just type the layer name you will get all the functions related to it

plsは下の写真を見てください: https ://i.stack.imgur.com/1LDz0.png

于 2018-03-15T06:35:03.357 に答える