如何使此过滤器正常工作?

时间:2019-03-25 10:00:16

标签: javascript filter mapbox

我尝试设置一个过滤器,以隐藏单击的功能项,但失败。

我搜索了在线示例,但找不到隐藏单击功能项的正确解决方案。因此,我最终写了一个过滤器解决方案。但似乎无法正常工作。问题是此过滤器处于“处于”状态。有什么我看不见的吗?

顺便说一句,当我试图解决这个问题时,我想出了一个奇怪的解决方案。如果我复制当前过滤器并与新过滤器连接,那么奇怪的是它可以正常工作。

filter = ["all", feature.layer.filter, ["!=", "$id", feature.id]];
map.setFilter(feature.layer.id, filter);

这是具有两个功能ID的示例过滤器,我想要实现这些功能ID:

[
  "all",
  [
    "!in",
    "$id",
    32167194270,
    21811787900
  ],
  [
    "in",
    "maki",
    "cafe"
  ]
]

正如您在过滤器中看到的那样,该层必须仅显示maki cafe图标,但带有这两个ID的除外。但它仅适用于第一个ID(32167194270),不适用于其他ID。

0 个答案:

没有答案