具有高精度和值得关注的HTML5地理定位

时间:2018-04-08 00:02:03

标签: javascript html5

我似乎无法弄清楚如何为html5地理位置添加高精度和值位置。我希望gps能够随着用户的移动而更新。有人可以帮忙吗?

import { ErrorHandler, Injectable, Injector, NgZone } from '@angular/core';
import { Router } from '@angular/router';

@Injectable()
export class AppErrorHandler implements ErrorHandler {

  constructor(private injector: Injector) { }

  handleError(error: any): void {
    const routerService = this.injector.get(Router);
    const ngZone = this.injector.get(NgZone);
    ngZone.run(() => {
      routerService.navigate(['/error'], { skipLocationChange: true });
    });
  }
}

1 个答案:

答案 0 :(得分:1)

您正在寻找watchPosition方法。

navigator.geolocation.watchPosition(updatePosition);

function updatePosition(pos){
   console.log(pos.coords);
}

至于准确性,watchPosition方法接受3个参数(成功,错误和选项),其中最后两个是可选的。 上面的示例显示了成功回调的使用,现在如果再添加两个..

navigator.geolocation.watchPosition(
     updatePosition,
     // Optional settings below
     positionError,
     {
         timeout: 0,
         enableHighAccuracy: true,
         maximumAge: 0
     }
);

选项启用enableHighAccuracy,这是不言自明的。

参考文献:

Html5 GeoLocation API

Position Options