2015-05-16 11 views
5

Próbuję użyć api Miejsc Google, aby zwrócić autouzupełniane wyniki, które są ograniczone tylko do kraju (w moim przypadku, USA), ale usługa nie wydaje się używać właściwości componentRestriction. Nie znalazłem nikogo innego mającego ten problem, więc myślę, że to jest problem z moim kodem. Używam także kanciastych dla aplikacji, ale nie mogłem zobaczyć, jak to wpłynęłoby na serwis internetowy.Ograniczenia Google places.AutocompleteService() do kraju w Angular - Nie działa

Oto zasadzie to, co mam:

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;     
    }); 
}; 

Filtr 'typów' działa, ale componentRestrictions nie jest.

ja także set-up skrzypce wykazać: http://jsfiddle.net/jdalton308/cLtyv803/7/

Dzięki za pomoc.

+0

możliwe duplikat [? Miejsc Google API - getQueryPredictions Ograniczanie Kraj/miasto/stan] (http://stackoverflow.com/questions/13620308/google-places-api -przypomnienia przepełnione lukami według kraju-miasta) – hberg

Odpowiedz

5

Zgodnie z documentationgetQueryPredictions() przyjmuje obiekt QueryAutocompletionRequest - który po prostu nie ma właściwości componentRestrictions.

Jeśli chcesz użyć componentRestrictions, musisz użyć metody getPlacePredictions() z akceptacją obiektu AutocompletionRequest.

To powinno działać:

autoComplete.getPlacePredictions(searchObj, function(predictions, status) { 
    //... 
     $scope.response = predictions;     
}); 
Powiązane problemy