我正在尝试填充Angularjs UI网格,当google地图的geocoder.geocode执行时,填充了UI网格..但是直到我点击DOM上的某些内容,导航器才会出现任何内容,然后数据出现在UI网格中..为什么它的表现如此?
geocoder.geocode({'location': latlng}, function(results, status) {
//console.log("vb");
$scope.cp++;
if (status === google.maps.GeocoderStatus.OK) {
if (results[1]) {
console.log('azerty: ' + JSON.stringify($scope.aqw[index]) );
$scope.aqw[index].adress=results[1].formatted_address;
if($scope.cp == $scope.Mylength){
//alert(JSON.stringify($scope.aqw));
$scope.gridOptions.data=$scope.aqw;
}
map.setZoom(11);
var marker = new google.maps.Marker({
position: latlng,
map: map
});
//console.log("vbbbb");
$scope.varr=results[1].formatted_address;
infowindow.setContent(results[1].formatted_address);
infowindow.open(map, marker);
//alert("kl");
} else {
window.alert('No results found');
}
} else {
window.alert('Geocoder failed due to: ' + status);
}
$scope.titi="djdjd";
// console.log( $scope.varr+' '+'cccccccccccccccccccccccccccccc');
console.log('azertym: ' + JSON.stringify($scope.aqw[index]) );
$scope.myData={};
$scope.myData+=$scope.aqw[index];
console.log('yoyoyoyo: ' + JSON.stringify($scope.aqw));
});
答案 0 :(得分:0)
我假设这是因为digest cycle
,范围不知道这些变化,因为它没有更新dom。
您可以在回调函数的末尾添加$scope.$apply()
。这将解决问题......
详细了解摘要并在此处申请:https://docs.angularjs.org/api/ng/type/ $ rootScope.Scope