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