如何使用地形地图类型设置基于云的谷歌地图样式?

Posted

技术标签:

【中文标题】如何使用地形地图类型设置基于云的谷歌地图样式?【英文标题】:How to style google maps cloud-based with terrain maptype? 【发布时间】:2022-01-10 10:12:11 【问题描述】:

我想做的是从本地样式切换到基于云的样式。在这里,我遇到了地形图类型的样式问题。 它曾经看起来像这样(并且有效):

<GoogleMap
                key="GoogleMap"
                mapContainerStyle=mapConfig.containerStyle
                zoom=mapConfig.zoom
                center=mapConfig.center
                options=
                    styles: options,
                    disableDefaultUI: true,
                    fullscreenControl: true,
                    mapTypeId: 'terrain',
                
                onClick=closeActiveTooltip
            >

现在我已将样式移至 API,它看起来像这样(不工作 - 地形正在覆盖样式,默认替换它们):

        <GoogleMap
                key="GoogleMap"
                mapContainerStyle=mapConfig.containerStyle
                zoom=mapConfig.zoom
                center=mapConfig.center
                options=
                    // styles: options,
                    // disableDefaultUI: true,
                    // fullscreenControl: true,
                    mapId: ['myId', 'terrain'],
                    // mapTypeId: 'terrain',
                

                onClick=closeActiveTooltip
            >

有人知道,是否有可能让它工作?

【问题讨论】:

【参考方案1】:

您似乎将使用 Maps javascript API 的 cloud-base styling,并希望在地形地图类型中实现它。这是当前 API 的预期行为,因为基于云的地图样式似乎不适用于地形和混合地图类型,如 Public Issue Tracker 中发布的那样。它还指出,在使用 JSON 样式(如您使用的第一个样式)时,此问题不适用。 您可以在链接上为问题加注星标以获取通知和更新。

【讨论】:

感谢您的回答。我给它加了星。但我可以说它适用于样式器(JSON,如第一个)。 @AlexZeynalov,是的,它确实可以在 JSON 中工作,而且问题只发生在云基础样式中。

以上是关于如何使用地形地图类型设置基于云的谷歌地图样式?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Global Mapper中打开谷歌卫星地图

从没有控件的谷歌地图打印地图

如何在同一张地图上使用带有多个标记的谷歌地图 API

如何利用GlobalMapper基于谷歌高程生成剖面图

如何从新的谷歌地图嵌入中删除框?

如何计算适当的谷歌地图缩放级别