繁体   English   中英

从 Mapbox 地理编码器中删除默认标记

[英]Remove default Marker from Mapbox Geocoder

我目前是一名初学者,正在尝试使用 ReactJS 和 Mapbox GL JS 构建项目。 到目前为止,我已经在从 JSON 文件检索到的位置创建了一个 map,其中包含地理编码器、导航控件和标记。 然而,令人讨厌的是,每当我使用地理编码器搜索位置时,它都会在我搜索过的位置放置一个标记。 现在,我刚刚编辑了标记属性,并使颜色与 JSON 位置上的标记不同,所以它看起来有点像样,但这只是一个临时解决方案。 我将如何 go 关于完全删除默认标记? 附上Geocoder元素代码:

const geocoder = new MapboxGeocoder({
      accessToken: mapboxgl.accessToken,
      mapboxgl: mapboxgl,
      placeholder: "Search City, State, Country, Zip Code",
      marker: {
        color: "black",
      },
    });
map.addControl(geocoder);

本质上,我正在尝试找到一种方法来完全摆脱 Geocoder 标记。 谢谢!

在 react-map-gl-geocoder 的 GitHub 主页中,它解释了关于 prop 'marker' 的内容:

如果为真,将使用一组默认标记选项将标记添加到 map 的用户选择结果的位置。 如果值为 object,则将使用这些选项构造标记。 如果为 false,则不会向 map 添加任何标记。

所以基本上你需要将你的代码更改为:

const geocoder = new MapboxGeocoder({
  accessToken: mapboxgl.accessToken,
  mapboxgl: mapboxgl,
  placeholder: "Search City, State, Country, Zip Code",
  marker: {false},
});
map.addControl(geocoder);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM