Skip to content

brandonxiang/leaflet.geoJsonFilter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#L.geojsonFilter

This extension of leaflet is inspired by mapbox featureLayer.setFilter function.

When you use setFilter function in L.geoJson, the origin geoJson will not be stored. After changing the filter, markers will becomes less. Therefore I wants to save the geoJson alternatively.

Installation

From npm repo

npm install leaflet.geojsonfilter --save

From CDN

https://cdn.rawgit.com/brandonxiang/leaflet.geoJsonFilter/develop/src/L.geoJsonFilter.js

Version

0.0.1 L.geoJsonFilter is a extension of L.GeoJSON, so you should call L.geoJsonFilter

0.1.0 setFilter is included in L.GeoJSON, so you can call 'L.geoJson'

Usage

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

DEMO

0.0.1 DEMO

0.1.0 DEMO

LICENSE

MIT

##进阶插件编写geojsonFilter


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

灵感来源自mapbox的featureLayer.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;
});

###例子

0.0.1 DEMO

0.1.0 DEMO

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

About

A leafletjs plugin to filter geojson marker based on its properties

Resources

License

Stars

Watchers

Forks

Packages

No packages published