我正在编写一个跟踪用户位置的Web应用程序。我想在浏览器中测试是否更改地理位置会实时更新UI。例如,当您使用Google地图并实际移动地图时,就会相应地进行更新。
我遇到了Chrome地理位置传感器,但是它无法实时更新位置。我需要刷新整个页面才能更改位置
有人知道我该如何实时吗?
我正在使用google-maps-react
答案 0 :(得分:0)
您可以利用JS计时器为您执行此操作。使用setInterval
,只需添加该功能即可检查用户的GPS位置。
setInterval(
function(){
navigator.geolocation.getCurrentPosition(function(position) {
this.setState({pos: position.coords});
});
},
3000);
之后,您可以使用this.state.pos.latitude
和this.state.pos.latitude
随着状态的变化实时更新地图。顺便说一下,这会每3秒更新一次用户的位置。
答案 1 :(得分:0)
好吧,我知道了!
我使用了react-geolocated
并将watchPosition
设置为true
。启用实时跟踪,每当我更改Chrome地理位置传感器时,它都会更新:-)