当我收到给定用户的地理位置时,我想更新一些字段。
直到知道我有以下代码:
首先,我得到一个Error: Unknown provider: positionProvider <- position
(仅在 jsfiddle 上)。我在我的真实网站上没有收到此错误。
问题是,当我获得位置时,我会更新position
服务中的对象,但它不会在 HTML 视图中更新。
有什么建议么?
当我收到给定用户的地理位置时,我想更新一些字段。
直到知道我有以下代码:
首先,我得到一个Error: Unknown provider: positionProvider <- position
(仅在 jsfiddle 上)。我在我的真实网站上没有收到此错误。
问题是,当我获得位置时,我会更新position
服务中的对象,但它不会在 HTML 视图中更新。
有什么建议么?
尝试这个。小提琴
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) { ...
您应该像这样更新控制器代码,以使用回调函数和 $apply 将值集应用到范围。
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;
});
});