You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在react-native-mapbox-gl中使用match过滤器过滤SymbolLayer报错求助

问题解决方法

你的错误出在Mapbox表达式的属性引用方式上,直接使用'name'和'maki'无法正确获取图层属性值,需要用['get', '属性名']的格式来引用属性。

修正后的代码如下:

<MapboxGL.SymbolLayer
  id="LayerRestaurant"
  filter={[
    'all',
    ['==', ['get', 'maki'], 'restaurant'],
    ['match', ['get', 'name'], 'Pita Pit', true, false],
  ]}
/>

额外注意:

  • 确认你的数据源中确实存在maki和name这两个属性,否则过滤器无法匹配到对应要素
  • match表达式的最后一个参数是默认值,你这里设置的false会让不匹配Pita Pit的要素被过滤掉,逻辑是正确的

内容的提问来源于stack exchange,提问作者Bruno Saito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 07:30:50