Angularjs-谷歌地图仅在第二次点击时更新

Angularjs-谷歌地图仅在第二次点击时更新,angularjs,Angularjs,我是Angularjs和脚本世界的新手,我已经用Angularjs构建了一个应用程序,当我点击邮政编码时,我应该在一个模态对话框上显示谷歌地图 这是工作正常,但只有当我点击第二次的按钮,请帮助我排序这…下面是我的代码 Javascript代码: // Opening googlemaps in modal window $scope.open = function(postcode) { var geocod

我是Angularjs和脚本世界的新手,我已经用Angularjs构建了一个应用程序,当我点击邮政编码时,我应该在一个模态对话框上显示谷歌地图

这是工作正常,但只有当我点击第二次的按钮,请帮助我排序这…下面是我的代码

Javascript代码:

// Opening googlemaps in modal window           


              $scope.open = function(postcode) {

                var geocoder = new google.maps.Geocoder();
                   geocoder.geocode({ 'address': postcode }, function (results, status) {
                        if (status == google.maps.GeocoderStatus.OK) {
                            $scope.lat = results[0].geometry.location.lat();
                            $scope.lng = results[0].geometry.location.lng();
                   /*     $scope.lng = lng;
                        $scope.lat = lat;*/
                         } else {
                            alert("Request failed.")
                        }
                    });


                var modalInstance = $modal.open({
                  templateUrl: 'myModalContent.html',
                  controller: ModalInstanceCtrl,
                  /*size: size,*/
                  resolve: {
                    lat: function () {
                      return $scope.lat;
                    },
                    lng: function () {
                      return $scope.lng;
                    }
                  }
                });

/*              modalInstance.result.then(function (selectedItem) {
                }, function () {
                  $log.info('Modal dismissed at: ' + new Date());
                });*/
              };

              var ModalInstanceCtrl = function ($scope, $modalInstance, lat, lng) {

                  $scope.lat = lat;
                  $scope.lng = lng;

                  $scope.render = true;

                  $scope.ok = function () {
                    $modalInstance.close();
                  };

                  $scope.cancel = function () {
                    $modalInstance.dismiss('cancel');
                  };
                };
        };

HTML Code :


 <script type="text/ng-template" id="myModalContent.html">

        <div class="modal-body">
            <map ng-if="$parent.render" center="[{{$parent.lat}}, {{$parent.lng}}]" zoom-control="true" zoom="15"> </map>
        </div>
         <div class="modal-footer">

            <button class="btn btn-warning" ng-click="cancel()">Cancel</button>
        </div>
    </script> 
在调试过程中,我已经确定了以下方法 地理编码器。地理编码{“地址”:邮政编码},函数结果,状态 在第一次单击时不返回任何长/长值仅在第二次单击时有效

请帮我整理一下这个问题

谢谢
Rajesh

您是否尝试使用$scope。$scope.lng=results[0]设置后应用$scope.lng;嗨,Ajay,我尝试了应用$scope。$apply,有谁能建议更好的方法吗。谢谢Rajesh