función de ejecución angular-google-maps UNA VEZ después de la carga inicial del mapa

utilizandoangular-google-maps para incorporar un mapa de google en una aplicación

Necesito un comando que ejecute una función UNA VEZ después de que se complete la carga inicial del mapa
- pero solo en la carga inicial,no después de cada manipulación del mapa

No puedo usaridle otilesloaded ya que estos se disparan después de cada movimiento ...

La función que quiero ejecutar necesita obtener límites del mapa para extraer datos de un servidor en la carga de la página inicial; quiero que esto ocurra UNA VEZ en la carga inicial, luego sea una función manual que use una actualizaciónmap-control
- si usoidle otilesloaded para disparar esto extraerá datos del servidorcada momento en que un usuario mueve el mapa.

¿Alguien sabe cómo disparar un comando único para obtener detalles del mapa (límites, etc.) después de la carga inicial del mapa?

He intentado ponermaps.getBounds() en la segunda función de promesa pero no funciona.

Nota,Tengo un violín trabajando aquí - Simplemente no puedo encadenar más promesas después del$scope.map los controles / opciones, etc. se definen porque no devuelven una promesa:

El ejemplo de código en los documentos no muestra cómo encadenar una promesadespués el$scope.map se define.

html

<div class="angular-google-map-container" ng-controller="MainCtrl">
    <ui-gmap-google-map center="map.center" zoom="map.zoom" draggable="true" options="map.options" events="map.events" control="googlemap">
    </ui-gmap-google-map>
</div>

controlador

myApp.controller('MainCtrl', function($scope, uiGmapGoogleMapApi) {
    uiGmapGoogleMapApi
    .then(function(maps){
        $scope.map = {
            center: {
                latitude: 37.7749295, 
                longitude: -122.4194155 
            },
            zoom: 12
            events: {
                tilesloaded: function (maps, eventName, args) {
                    myServiceFuntion(maps)    // this work fine but fires every time
                },
                dragend: function (maps, eventName, args) {
                    myServiceFuntion(maps)    // this work fine but fires every time
                },
                zoom_changed: function (maps, eventName, args) {
                    myServiceFuntion(maps)    // this work fine but fires every time
                }
            }
        }

        $scope.bounds = maps.getBounds()    // this gives me 'getBounds() not a function'
        myServiceFuntion(maps);    // this gives an error... ?
        return maps;            //no promise returned here so no chance to delay the function below
    })
    .then(function(maps){
        //is this where i need to put my function ?  doesn't delay on map load since no promise returned...
    });
});

Obviamente elmaps objeto devuelto por eluiGmapGoogleMapApi promesa es completamente diferente a lamaps objeto devuelto por eventos comotilesloaded etc ... bastante confuso.

También,las preguntas frecuentes solo indica cómo usartilesloaded para obtener la instancia del mapa, que no funciona por razones ya descritas.

Respuestas a la pregunta(2)

Su respuesta a la pregunta