Ionic & ngCorgova 地理定位
Posted
技术标签:
【中文标题】Ionic & ngCorgova 地理定位【英文标题】:Ionic & ngCorgova Geolocation 【发布时间】:2015-11-19 14:09:57 【问题描述】:我目前正在从事 Ionic / ngCordova 地理定位项目,我们希望能够获取用户当前位置。
我已设法获取用户位置,但无法获得超时刷新以在移动时继续查看他们的位置。
任何建议/帮助将不胜感激。
(function(angular, undefined)
"use strict";
var app = angular.module('starter');
app.controller('geoCtrl', function($cordovaGeolocation, $scope)
var self = this;
var posOptions = enableHighAccuracy: true, maximumAge: 5000, timeout: 8000;
$cordovaGeolocation
.getCurrentPosition(posOptions)
.then(function (position)
var lat = position.coords.latitude;
var long = position.coords.longitude;
self.location = lat +' - '+ long;
console.log(self.location);
, function(err)
console.log('error:', error);
);
var watchOptions =
timeout : 1000,
enableHighAccuracy: false
;
var watch = $cordovaGeolocation.watchPosition(watchOptions);
watch.then(
null,
function(err)
,
function(position)
var lat = position.coords.latitude;
var long = position.coords.longitude;
self.location = lat +' - '+ long;
console.log(self.location);
);
watch.clearWatch();
);
)(angular);
【问题讨论】:
【参考方案1】:您正在调用watch.clearWatch()
,它的作用基本上是重置观察者。
根据插件的documentation
navigator.geolocation.clearWatch
停止观察由 watchID 参数。
navigator.geolocation.clearWatch(watchID);
只需评论该行,一切都会正常。
【讨论】:
以上是关于Ionic & ngCorgova 地理定位的主要内容,如果未能解决你的问题,请参考以下文章
Ionic4 watchPosition 和 getCurrentPosition 的地理位置与 Ionic/Capacitor 不准确