0
当我收到给定用户的地理位置时,我想更新一些字段。使用服务更新带有用户位置的字段
直到知道我有下面的代码:
首先,我得到一个Error: Unknown provider: positionProvider <- position
(仅在的jsfiddle)。我没有在我的真实网站上看到这个错误。
问题是,当我得到位置时,我更新服务中的position
对象,但它不会在HTML视图中更新。
有什么建议吗?
当我收到给定用户的地理位置时,我想更新一些字段。使用服务更新带有用户位置的字段
直到知道我有下面的代码:
首先,我得到一个Error: Unknown provider: positionProvider <- position
(仅在的jsfiddle)。我没有在我的真实网站上看到这个错误。
问题是,当我得到位置时,我更新服务中的position
对象,但它不会在HTML视图中更新。
有什么建议吗?
试试这个。 Fiddle
var test = angular.module('myApp', []);
var services = angular.module('myApp.services', []);
services.factory('position', ['$http', function ($http) { ...
应该
var test = angular.module('myApp', []);
test.factory('position', ['$http', function ($http) { ...
您应该更新控制器代码这一点,使用一个回调函数和$适用于申请设置范围值。
position.getPosition(function (p) {
$scope.$apply(function() {
$scope.position.latitude = p.coords.latitude;
$scope.position.longitude = p.coords.longitude;
$scope.position.accuracy = p.coords.accuracy;
});
});
谢谢,那是第一次修复。你知道为什么如果你接受提供你的地理定位'N/A'没有更新到真正的价值吗? – glarkou
我认为问题是因为工厂异步返回,因此position.latitude =“N/A”,然后相应更新。你能提供一个固定的jsfiddle吗? – glarkou
@salamis。完成。请检查。 – zsong