如何使用传单实时提取用户经纬度

Posted

技术标签:

【中文标题】如何使用传单实时提取用户经纬度【英文标题】:How to extract users longitude and latitude in real time using leaflet 【发布时间】:2018-07-09 14:46:56 【问题描述】:

我在跨平台移动应用程序中使用 Leaflet。 我希望用户实时看到他/她在地图上的移动。 我还想将它们的经度和纬度分别保存为全局变量,因为我需要这些信息来稍后进行计算。 以下是我到目前为止的内容:

map.locate(
            watchPosition:true,
            maxZoom:16
          );

function onLocationFound(e)

  var radius = e.accuracy / 2;

  L.circle(e.latlng, radius,
    
      color: 'red',
      fillColor: '#f03',
      fillOpacity: 0.5,
      radius: 400
    ).addTo(map);


map.on('locationfound', onLocationFound);

我相信“watchPosition:true”可以让地图继续关注用户。 我只是不知道如何提取经度和纬度信息。 在此先感谢

【问题讨论】:

【参考方案1】:

Leaflet map.locate 选项就是watch

如果true,使用W3C watchPosition 方法开始连续观察位置变化(而不是检测一次)。

【讨论】:

【参考方案2】:
function onLocationFound(e)

  var radius = e.accuracy / 2;
  userLat = e.latlng.lat;
  userLng = e.latlng.lng;
  movingCircle.setLatLng(e.latlng);
  movingCircle.redraw();


var userLocation = map.locate
(
  watch:true,
  maxZoom:16,
  enableHighAccuracy: true
);
var userLat;
var userLng;

    enter code here

var movingCircle = L.circle([0,0], 20,
color: 'red',
fillColor: '#f03',
fillOpacity: 0.5,
draggable: true ).addTo(map);

【讨论】:

以上是关于如何使用传单实时提取用户经纬度的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS,传单。如何从第三方服务动态获取纬度和经度坐标?

闪亮的应用程序模块:使用传单提取在服务器函数中创建的输入

如何使用传单绘制 100m x 100m 矩形

如何使用传单定位定位用户?

将纬度替换为经度

如何在另一个项目中使用 Geoquery 与 android 中的 geofire 实时数据库?