【问题标题】:Is there a built-in way to change the style without reloading the whole map?有没有一种内置方法可以在不重新加载整个地图的情况下更改样式?
【发布时间】:2019-09-30 17:49:14
【问题描述】:

每当我使用 map.setStyle 更改样式时,整个地图都会重新加载。这可以在 Mapbox GL JS 示例中看到:https://docs.mapbox.com/mapbox-gl-js/example/setstyle/

我有兴趣更无缝地更改地图。当您在地图和卫星视图之间切换时,可以在 Google 地图中看到一个示例。

Mapbox GL JS 是否有一种无需重新加载整个地图即可轻松更改样式的方法,还是需要手动实现(即使用 map.removeSource、map.addSource、map.removeLayer、map.addLayer)?

【问题讨论】:

    标签: mapbox-gl-js


    【解决方案1】:

    这取决于您所说的“重新加载整个地图”是什么意思。在这种情况下,每一个层和源都被批量替换,所以它真的没有太多选择。

    如果您有一个样式对象,对其进行一些更改,并使用新的样式对象调用setStyle(),我的理解是只有差异才会起作用。所以通常情况下,效果不会是“重新加载整个地图”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-02
      • 2023-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-27
      • 2020-01-06
      • 2013-06-21
      • 1970-01-01
      相关资源
      最近更新 更多