Mapbox GL JS は初めてですが、とても気に入っています! 誰かが私を助けてくれるかどうか疑問に思っているGeoJsonソースのマーカーをフィルタリングするときに私が遭遇したいくつかのこと...これが私のフィルターロジックのサンプルです:
function applyFilters() {
var filters = ["all", ["==", "$type", "Point"]];
if (document.getElementById('filter1checkbox').checked)
filters.push(['==', 'property1', true]);
if (document.getElementById('filter2checkbox').checked)
filters.push(['==', 'property2', true]);
map.setFilter('markers', filters);
var llb = new mapboxgl.LngLatBounds(geojsonExtent(markers));
map.fitBounds(llb);
map.setCenter(llb.getCenter());
}
そして、ここに私の質問があります:
- フィルターが適用されたら、フィルターに一致したマーカーの数を取得する方法はありますか (検索で {X} 個のアイテムが返されました)。
- geojsonExtent を使用してマーカー コレクションの境界を取得すると、フィルターが考慮されていないようです。フィルターの背後にあるデータを取得して geojsonExtent に渡す方法はありますか?
これらのアイテムのどこに行くべきかアドバイスはありますか?