在 Mapbox GL-JS 中停止 map.on() 侦听器
Stopping map.on() listener in Mapbox GL-JS
我很难理解如何在设置地图后停止事件侦听器。这里还有另外两个类似的问题,但经过努力我无法让它为我工作。
我设置事件侦听器的代码很简单:
map.on("move", function() {
console.log("foo");
}
})
如何才能随意停止呢?我试过 map.off('move');
但这对我不起作用。我还查看了 the mapbox docs 上的文档,但也没有运气。
文档显示我需要两者:
- Type(字符串)要为其删除侦听器的事件类型。
- 监听器(函数)要删除的监听器函数。
但是,我不知道我应该使用什么作为 监听器。 (这就是为什么我只能尝试map.off('move');
)。
在这种情况下如何正确设置 .off()?
这样使用:
const myfunc = () => console.log('foo');
map.on('move', myfunc);
map.off('move', myfunc);
您需要使用静态函数或将箭头函数分配给变量,以便能够使用完全相同的函数调用 off
。
我很难理解如何在设置地图后停止事件侦听器。这里还有另外两个类似的问题,但经过努力我无法让它为我工作。
我设置事件侦听器的代码很简单:
map.on("move", function() {
console.log("foo");
}
})
如何才能随意停止呢?我试过 map.off('move');
但这对我不起作用。我还查看了 the mapbox docs 上的文档,但也没有运气。
文档显示我需要两者:
- Type(字符串)要为其删除侦听器的事件类型。
- 监听器(函数)要删除的监听器函数。
但是,我不知道我应该使用什么作为 监听器。 (这就是为什么我只能尝试map.off('move');
)。
在这种情况下如何正确设置 .off()?
这样使用:
const myfunc = () => console.log('foo');
map.on('move', myfunc);
map.off('move', myfunc);
您需要使用静态函数或将箭头函数分配给变量,以便能够使用完全相同的函数调用 off
。