Javascript 如何检测地图何时移动?

Javascript 如何检测地图何时移动?,javascript,esri,arcgis-js-api,Javascript,Esri,Arcgis Js Api,我希望检测地图何时移动,无论是在中心位置还是缩放方面 这就是我目前正在尝试的方式: var map = new Map({ basemap: 'streets' }); var view = new MapView({ container: 'mapDiv', map: map }); map.on('extent-change', function () { console.log('Map is moved', arguments); }); 好的,您可

我希望检测地图何时移动,无论是在中心位置还是缩放方面

这就是我目前正在尝试的方式:

var map = new Map({
    basemap: 'streets'
});

var view = new MapView({
    container: 'mapDiv',
    map: map
});

map.on('extent-change', function () {
    console.log('Map is moved', arguments);
});

好的,您可以使用esri watchUtils来实现这一点

这主要取决于您使用的是哪个版本。在
3.18
之前,它在
范围更改中正常工作。根据您的代码,您似乎正在使用
4.0或更高版本

使用此选项而不是
范围更改
-

 watchUtils.whenTrue(view, "stationary", function() {        
      // Get the new extent of view/map whenever map is updated. 
      if (view.extent) {
        console.log('Map is moved');
      }
 });
以下是该项目的工作代码-


开始使用MapView-创建二维地图-4.1
html,
身体,
#视窗{
填充:0;
保证金:0;
身高:100%;
宽度:100%;
}
#输出消息{
位置:绝对位置;
z指数:70;
顶部:0px;
右:0;
底部:0;
框大小:边框框;
填充:20px;
身高:100%;
宽度:350px;
背景:rgba(0,0,0,0.7);
颜色:白色;
字体大小:14px;
线高:30px;
溢出:自动
}
#输出消息范围{
颜色:#F7BE81;
字体大小:粗体;
}
要求([
“esri/Map”,
“dojo/dom”,
“esri/views/MapView”,
“esri/core/Watchitils”,
“dojo/domReady!”
],函数(映射、dom、MapView、watchUtils){
var映射=新映射({
基本地图:“街道”
});
var view=新的地图视图({
容器:“viewDiv”,
地图:地图,
缩放:4,
中间:[15,65]
});
var outputMessages=dom.byId(“outputMessages”);
功能显示消息(信息){
outputMessages.innerHTML+=info;
outputMessages.scrollTop=outputMessages.scrollHeight;
}
//*******************************************************************
//查看属性的更改
//1.观察视图。固定属性
//*******************************************************************
//观察视图的静止属性以使其变为真实。
watchUtils.whenTrue(视图,“静止”,函数(){
//仅在视图静止时获取视图的新中心。
如果(视图中心){
var info=“
视图中心已更改。x:”+ view.center.x.toFixed(2)+“y:”+view.center.y.toFixed(2); 显示消息(信息); } //仅在视图静止时获取视图的新范围。 if(视图范围){ var info=“
视图范围已更改:”+
xmin:+view.extent.xmin.toFixed(2)+xmax:+ view.extent.xmax.toFixed(2)+
ymin:“+view.extent.ymin.toFixed(2)+”ymax:”+ view.extent.ymax.toFixed(2); 显示消息(信息); } }); });