如何关闭地图点击事件

How do I turn off a map click event

我能够获取地图点击事件,并希望在事件被接收和处理后关闭点击事件处理程序。

我想删除事件处理程序,以便以后在地图上单击时不再调用事件处理程序。

view.on("click", function(event) {
    var point = "point: (" + event.mapPoint.latitude + ", " + event.mapPoint.longitude + ")";
  console.log("click event: ", point);
  findStores(event.mapPoint.latitude, event.mapPoint.longitude);
  // now I want to disable the click event until it is re-enabled
  });

由于您用 arcgis 标记了您的问题,我假设您的代码示例中的 viewesri/views/View.

的一个实例

然后,只需按照 documentation for view.on(),您只需存储并调用删除处理程序:

var handler = view.on("click", function(event) {
    var point = "point: (" + event.mapPoint.latitude + ", " + event.mapPoint.longitude + ")";
    console.log("click event: ", point);
    findStores(event.mapPoint.latitude, event.mapPoint.longitude);

    handler.remove();
});