2015-05-16 4 views
5

Ho cercato di utilizzare l'API di Google Places per restituire risultati di completamento automatico limitati a un solo Paese (nel mio caso, gli Stati Uniti), ma il il servizio non sembra utilizzare la proprietà componentRestriction. Non ho trovato nessun altro con questo problema, quindi penso che sia un problema con il mio codice. Inoltre, sto usando angolare per l'app, ma non ho potuto vedere come ciò avrebbe influenzato il servizio web.Restrizione di Google places.AutocompleteService() in un paese in Angolare - Non funzionante

Qui è fondamentalmente quello che ho:

HTML:

<input ng-model="query" ng-keyup="getPredictions(query)"> 

JS:

var autoComplete = new google.maps.places.AutocompleteService(); 

$scope.getPredictions(query){ 

    var searchObj = { 
     input: query, 
     componentRestrictions: {country: 'us'}, 
     types: '(cities)' 
    }; 

    autoComplete.getQueryPredictions(searchObj, function(predictions, status) { 
     //... 
      $scope.response = predictions;     
    }); 
}; 

Il filtro 'tipi' funziona, ma le componentRestrictions non lo è.

Ho anche set-up un violino per dimostrare: http://jsfiddle.net/jdalton308/cLtyv803/7/

Grazie per qualsiasi aiuto.

+0

possibile duplicato di [? Google Places API - getQueryPredictions Limite dopo Nazione/Regione/Stato] (http://stackoverflow.com/questions/13620308/google-places-api -getquerypredictions-limitare per paese-città-stato) – hberg

risposta

5

In base allo documentationgetQueryPredictions() accetta QueryAutocompletionRequest oggetto - che semplicemente non ha la proprietà componentRestrictions.

Quindi se si desidera utilizzare il componentRestrictions è necessario utilizzare il metodo getPlacePredictions() con accetta AutocompletionRequest oggetto.

Questo dovrebbe funzionare:

autoComplete.getPlacePredictions(searchObj, function(predictions, status) { 
    //... 
     $scope.response = predictions;     
}); 
Problemi correlati