navigator.geolocation.watchPosition La devolución de llamada exitosa siempre se llama con un objeto de posición vacío. ¿Qué me estoy perdiendo? Intenté la siguiente configuración (ubicación otorgada, https):
function errorCb(error) { console.log('errorCb() ' + error.code + ", " + error.message); } if (navigator.geolocation) { const options = { enableHighAccuracy: false, timeout: 5000, maximumAge: 0 }; navigator.geolocation.watchPosition(position => { console.log("pos: " + JSON.stringify(position)); // always displays "pos: {}" }, errorCb, options); }Refiriéndose al comentario de Andys, el objeto de posición proporcionado no se puede clasificar. Accede al objeto directamente:
var coords = position.coords; var latitude = coords.latitude; var longitude = coords.longitude;