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

使用ArcGIS JS API 4修改BasemapToggle切换底图的正确方法

修改ArcGIS JS API 4中BasemapToggle的切换底图方法

BasemapToggle控件的核心逻辑是维护**当前激活底图(activeBasemap)和切换目标底图(nextBasemap)**两个属性,点击控件时会在两者间切换。你之前的代码只修改了当前激活底图,并没有替换掉原来的切换目标,所以达不到替换第二个底图的效果。

正确的处理方式分两种场景:

场景1:当前显示的是初始底图(比如你的map1)

直接修改nextBasemap属性为新的map3即可:

// 替换切换目标底图
basemapToggle.nextBasemap = map3;

此时控件的两个切换底图就变成了初始底图和map3。

场景2:当前显示的是原来的map2

需要先将当前底图切回初始底图,再修改切换目标:

// 切回初始底图
basemapToggle.activeBasemap = map1;
// 设置新的切换目标
basemapToggle.nextBasemap = map3;

或者也可以先修改nextBasemap再切换,逻辑是一样的,最终确保两个属性对应你需要的两个底图。

验证方法:修改完成后点击BasemapToggle控件,会在初始底图和map3之间切换,达到你要的仅保留两个底图且替换第二个的效果。

内容的提问来源于stack exchange,提问作者Robert Smith

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 19:52:21