Azure Maps 数据驱动样式表达式如何使用AND逻辑组合多个筛选条件
筛选条件AND逻辑组合正确写法
你之前的写法错误是误用了JavaScript原生按位与运算符&拼接过滤规则数组,这类地图图层的过滤表达式遵循专属的表达式语法,不可直接使用JS运算符拼接不同规则。
要实现多个过滤规则同时生效的逻辑与效果,使用all操作符作为表达式数组的第一个元素,后续依次填入所有需要同时满足的过滤规则即可,正确写法示例如下:
var combinedFilter = [ 'all', // 按图层组过滤规则 ['in', ['get', 'layerGroup'], ['literal', layerGroupsArray]], // 几何类型限制规则 ['==', ['geometry-type'], 'LineString'] ]; // 传入图层配置即可生效 layer.setOptions({ filter: combinedFilter });
如果需要叠加更多同时生效的过滤规则,直接在all操作符后的数组中追加对应规则即可。
内容的提问来源于stack exchange,提问作者OJB1
相关产品推荐
相关产品推荐

