UNPKG

nuxt-mapbox

Version:

Elegant Mapbox GL JS integration with Nuxt

22 lines (21 loc) 557 B
import { watch, useMapboxPopupRef } from "#imports"; export function useMapboxPopup(popupID, callback) { let callbackDone = false; const popup = useMapboxPopupRef(popupID); if (!popup.value) { const killWatch = watch(() => popup.value, () => { if (popup.value?.getElement?.()) { if (!callbackDone) { callback(popup.value); callbackDone = true; killWatch(); } } }, { deep: true }); } else { if (!callbackDone) { callback(popup.value); callbackDone = true; } } }