数据未出现在 ui 网格中

data does not appear in the ui grid

我正在尝试填充 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));

          });

我假设这是因为 digest cycle,作用域不知道这些变化,因此它没有更新 dom。

您可以在回调函数的末尾包含一个 $scope.$apply()。这将解决问题...

阅读有关摘要的更多信息并在此处应用:https://docs.angularjs.org/api/ng/type/$rootScope.Scope