2016-05-04 4 views
0

リーフレットマップ(http://leafletjs.com/examples/layers-control.html)の例に従えば、overlayMapsCitiesで示されたレイヤーグループcitiesを作成できます。名前の文字列でリーフレットレイヤーグループを取得する

後の段階(別の機能)では、オブジェクトlayer groupcitiesまたはCitiesという名前で取得できますか?次に、別の機能(例:チラシ - 検索(https://github.com/stefanocudini/leaflet-search))で使用できます。

これは私の質問

find_layer_by_name = function(name){ 
    // add code here 
}; 
var searchLayer = find_layer_by_name('cities'); 
var searchcontrol = new L.Control.Search({layer: searchLayer}); 

私の質問が明確でない場合は、私に教えてくださいをデモするために、私の擬似コードです。

+0

はあなたがここから 'cities'を取得したいです'するvar overlayMaps = { "都市"::都市 }以下はcitiessearchLayerに割り当てられます。 ' – muzaffar

答えて

1

(リーフレットの例のように)キーと値のペアを持つoverlayMapsオブジェクトを作成した場合は、対応するレイヤーを取得するためにキーで角カッコ表記を使用できます。

var overlayMaps = { 
    "Cities": cities 
}; 

var searchLayer = overlayMaps["Cities"]; 
関連する問題