Javascript 如何使用nouislider中的滑块过滤传单.js上的聚集标记

Javascript 如何使用nouislider中的滑块过滤传单.js上的聚集标记,javascript,leaflet,nouislider,leaflet.markercluster,Javascript,Leaflet,Nouislider,Leaflet.markercluster,我在地图上有集群标记,我正在使用一个名为nouislider的库作为我的滑块。我使用它来根据指定的距离范围显示某些标记 我得到了这个工作的标记,但没有运气聚集标记。它正在删除所有群集标记,而不是对其进行筛选。我不知道该怎么做。如果有人能指引我正确的方向,我将不胜感激 这是我代码的链接。请记住,我无法让滑块显示在Jfiddle上,并且在那里也出现了一个错误——“L.geoJson不是一个函数” 这是我的过滤器,它适用于标记,但不适用于聚集标记,我认为问题是我没有过滤聚集标记,我不知道如何做

我在地图上有集群标记,我正在使用一个名为nouislider的库作为我的滑块。我使用它来根据指定的距离范围显示某些标记

我得到了这个工作的标记,但没有运气聚集标记。它正在删除所有群集标记,而不是对其进行筛选。我不知道该怎么做。如果有人能指引我正确的方向,我将不胜感激

这是我代码的链接。请记住,我无法让滑块显示在Jfiddle上,并且在那里也出现了一个错误——“L.geoJson不是一个函数”

这是我的过滤器,它适用于标记,但不适用于聚集标记,我认为问题是我没有过滤聚集标记,我不知道如何做


        var slider = document.getElementById("slider");

        noUiSlider
          .create(slider, {
            start: [min + 1, max - 1],
            tooltips: true,
            connect: true,
            range: {
              min: min,
              max: max
            }
          })
          .on("slide", function(e) {
            console.log("e", e);
            surfSpotsGeoJSON.eachLayer(function(layer) {
              console.log("layer", layer);
              if (
                parseFloat(layer.feature.properties.distance) >=
                  parseFloat(e[0]) &&
                parseFloat(layer.feature.properties.distance) <=
                  parseFloat(e[1])
              ) {
                layer.addTo(map);
              } else {
                map.removeLayer(layer);
              }
            });
          });
      })
      .catch(err => console.log(err.message));
  }

var slider=document.getElementById(“slider”);
努伊斯利德
.创建(滑块{
开始:[最小值+1,最大值-1],
工具提示:正确,
连接:是的,
范围:{
敏:敏,,
马克斯:马克斯
}
})
.on(“幻灯片”,功能(e){
控制台日志(“e”,e);
surfSpotsGeoJSON.eachLayer(函数(层){
控制台日志(“层”,层);
如果(
parseFloat(层.特征.属性.距离)>=
parseFloat(e[0])&&
parseFloat(layer.feature.properties.distance)console.log(err.message));
}

您可能会对我的插件感兴趣:

用于传单.markercluster插件的子插件(简称MCG);与L.Control.Layers和其他传单插件兼容。即,所有使用直接调用
map.addLayer
map.removeLayer
的插件

另见


在您的情况下,您可以签入您的
surfSpotsGeoJSON
传单GeoJSON层组,插件应该负责其余部分。

您可能会对我的插件感兴趣:

用于传单.markercluster插件的子插件(简称MCG);与L.Control.Layers和其他传单插件兼容。即,所有使用直接调用
map.addLayer
map.removeLayer
的插件

另见

在您的情况下,您需要签入
surfSpotsGeoJSON
传单GeoJSON层组,插件应该负责其余部分