async function getCurrentPosition() {
return new Promise((resolve, reject) => {
if (!navigator.geolocation) {
reject("Geolocation is not supported");
return;
}
navigator.geolocation.getCurrentPosition(
(position) => {
const { latitude, longitude } = position.coords;
userLocation = { latitude, longitude }; // Store globally
resolve(userLocation); // Resolve with user location
},
(error) => reject(error.message) // Reject on error (e.g., permission denied)
);
});
}
async function init() {
// prettier-ignore
try { // get user location on page load
const location = await getCurrentPosition();
console.log({userLocation});
} catch (error) {
console.error(error);
}
}
window.addEventListener("DOMContentLoaded", init);
Comments