Javascript 传单,否则=不显示标记
我需要一种方法来显示没有标记或在下面的“如果和如果”不可见标记。 我有一个不允许在地图上可见的要素属性值 任何建议都很好,因为我没有主意 谢谢Javascript 传单,否则=不显示标记,javascript,leaflet,font-awesome,Javascript,Leaflet,Font Awesome,我需要一种方法来显示没有标记或在下面的“如果和如果”不可见标记。 我有一个不允许在地图上可见的要素属性值 任何建议都很好,因为我没有主意 谢谢 pointToLayer: function(feature, latlng) { var stt = feature.properties.sid; var prd = feature.properties.utl; var marker; // filter if (stt === 162341 &&
pointToLayer: function(feature, latlng) {
var stt = feature.properties.sid;
var prd = feature.properties.utl;
var marker;
// filter
if (stt === 162341 && prd === 'A') {
marker = new L.marker(latlng, {icon: L.AwesomeMarkers.icon({icon: 'th-large', prefix: 'fa', markerColor: 'darkblue'}) });
} else if (stt === 162341 && prd === 'B') {
marker = new L.marker(latlng, {icon: L.AwesomeMarkers.icon({icon: 'navicon', prefix: 'fa', markerColor: 'darkblue'}) });
} else if (stt === 162341 && prd === 'AB') {
marker = new L.marker(latlng, {icon: L.AwesomeMarkers.icon({icon: 'list', prefix: 'fa', markerColor: 'darkblue'}) });
} else if (stt === 162341 && prd === 'X') {
marker = new L.marker(latlng, {icon: L.AwesomeMarkers.icon({icon: 'circle-thin', prefix: 'fa', markerColor: 'darkblue'}) });
} else {
marker = show no marker on map with this property value};
}
return marker;
}
}).addTo(map);
您正在使用
pointToLayer
,这告诉我您正在使用L.GeoJson
解析一些GeoJson并从中创建标记
让我引用一下关于L.GeoJson
的可能选项:
pointToLayer
A函数
定义GeoJSON点如何生成传单层。当添加数据时,会在内部调用它,传递GeoJSON点特性及其LatLng
。默认值是生成默认的标记
过滤器
将用于决定是否包含功能的功能
。默认设置是包含所有功能
考虑到这一点,显然可以同时使用
filter
函数(对于未显示的点,该函数应返回false
),然后使用pointToLayer
函数(对于未过滤出的点,该函数应实例化Marker
s)。您是否尝试过Marker=null代码>?很清楚你在问什么,但是。。。也许只是删除else
分支?还有一个小的重写建议:我到底为什么没有想到“null”…)伟大的改写,比我的更干净,赢得了喝彩