From 6d342247f4927b85720247e7ada76e6dd1963089 Mon Sep 17 00:00:00 2001 From: zksx <52799997+zksx@users.noreply.github.com> Date: Mon, 6 Nov 2023 15:25:32 -0700 Subject: [PATCH] fix bug when a default property is given, global map is now showing diffrent styles for different features --- src/leaflet.sld.js | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/leaflet.sld.js b/src/leaflet.sld.js index 75b18bd75..6635f2bf4 100644 --- a/src/leaflet.sld.js +++ b/src/leaflet.sld.js @@ -29,8 +29,8 @@ class LineSegment{ // default Path style applied if nothing matches var defaultStyle = { stroke: true, - color: "#03f", - weight: 5, + color: "#000", + weight: 1, opacity: 1, fillOpacity: 1, fillColor: '#03f', @@ -269,25 +269,30 @@ L.SLDStyler = L.Class.extend({ isFilterMatch: function(filter, properties) { if (filter) { var operator = filter.operator == null || filter.operator == 'and' ? 'every' : 'some'; + if(filter.comparisions.length <= 0){ + return false; + } return filter.comparisions[operator](function(comp) { + var property = properties[comp.property.toLowerCase()]; if (comp.operator == '==') { - return properties[comp.property] == comp.literal; + return property == comp.literal; } else if (comp.operator == '!=') { - return properties[comp.property] != comp.literal; + return property != comp.literal; } else if (comp.operator == '<') { - return properties[comp.property] < comp.literal; + return property < comp.literal; } else if (comp.operator == '>') { - return properties[comp.property] > comp.literal; + return property > comp.literal; } else if (comp.operator == '<=') { - return properties[comp.property] <= comp.literal; + return property <= comp.literal; } else if (comp.operator == '>=') { - return properties[comp.property] >= comp.literal; + return property >= comp.literal; } else { console.error('Unknown comparision operator', comp.operator); } }); - } else + } else{ return true; + } }, matchFn: function (featureTypeStyle, feature) { var matchingRule = null; -- GitLab