我有一个AngularJS应用程序,它有一个位置列表,它存储了一个lat& lng值为每个。
该应用程序使用Google Maps API自动填充地址输入框,访问者可以选择其地址。一旦他们选择了他们的地址并且谷歌地图API给了我他们的坐标,我想用它来为模型服务器调用,这是上面提到的带有lat& amp;位置的列表。 lng值。
然后我使用ng-repeat显示数据列表。我想在数据中加入一个Google Maps API方法,用于计算用户位置和每个列出位置之间的距离。
所以我的问题是我如何:
实质上,如何在外部函数运行后运行AngularJS函数并更新$ scope变量?
search.controller('SearchController', function SearchController($scope) {
$scope.results = [{
name: 'Shop 1',
lat: -33.883244,
lng: 151.212156
}];
$scope.sortBy = "name";
});
function initMap() {
var input = document.getElementById('addressBox');
autocomplete = new google.maps.places.Autocomplete(input, {
componentRestrictions: { country: 'au' },
types: ['geocode']
});
autocomplete.addListener('place_changed', function() {
console.log(autocomplete.getPlace().geometry);
});
}