Leaflet 笔记三:进阶插件编写geojsonFilter

进阶插件编写geojsonFilter


github源码在此,记得点星:
https://github.com/brandonxiang/leaflet.geoJsonFilter

灵感来源自mapbox的setfilter功能。

当然L.geoJson也有setfilter的功能,但是它原始的geojson并不会进行存储,在改变filter后,markers会越来越少。这是由于它并没有存储原型数据,我参考了mapbox.js的featurelayer源码。将输入数据以私有变量的形式存储起来,替换filter时再进行加载。这样,就可以不用mapbox.js的情况下使用setfilter。

原理

原理很简单,先将geojson存起来。当setfilter完成后重新加载。

使用方法

marker.setFilter(function(f){ 
return f.properties.number === 2;
});

例子

DEMO http://brandonxiang.github.io/leaflet.geoJsonFilter/

转载,请表明出处。总目录Awesome GIS

你可能感兴趣的:(Leaflet 笔记三:进阶插件编写geojsonFilter)