Mapbox GL JS 监听弹出打开事件吗?

Sim*_*leJ 6 javascript mapbox-gl-js

有什么方法可以检测 Mapbox 弹出窗口何时打开?mapbox 存储库中的此问题close描述了一个如下工作的事件:

let popup = new mapboxgl.Popup()
popup.on('close', function(e) {
    alert()
})
Run Code Online (Sandbox Code Playgroud)

但是,我找不到任何方法来检测弹出窗口何时打开。这不起作用:

let popup = new mapboxgl.Popup()
popup.on('open', function(e) {
    alert()
})
Run Code Online (Sandbox Code Playgroud)

编辑:

现在支持弹出事件,因此上面的示例应该可以工作。

And*_*-lo 0

虽然官方 API 不提供“打开”事件,但您可以尝试编写自己的自定义事件。请参阅: https: //www.mapbox.com/mapbox-gl-js/api/#evented#fire

 let popup = new mapboxgl.Popup()
 popup.on('click', function(e) {
   // popup opened so we fire an event
   map.fire('your.custom.popup.event.name', {popup});
 });

 // subscribe to the event
 map.on('your.custom.popup.event.name', (popup) => { 
   console.log('do something with popup', popup);
 });
Run Code Online (Sandbox Code Playgroud)