2015-05-16 17 views
5

Tôi đã cố gắng sử dụng api của Google Địa điểm để trả lại kết quả tự động hoàn tất chỉ giới hạn ở một quốc gia (trong trường hợp của tôi là Hoa Kỳ), nhưng dịch vụ dường như không sử dụng thuộc tính componentRestriction. Tôi đã không tìm thấy bất cứ ai khác có vấn đề này, vì vậy tôi nghĩ rằng đó là một vấn đề với mã của tôi. Ngoài ra, tôi đang sử dụng góc cạnh cho ứng dụng, nhưng tôi không thể thấy điều đó sẽ ảnh hưởng đến dịch vụ web như thế nào.Giới hạn địa điểm Google.AutocompleteService() thành quốc gia trong Góc - Không hoạt động

Đây là cơ bản những gì tôi có:

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

Bộ lọc 'loại' đang làm việc, nhưng không phải là componentRestrictions.

Tôi cũng thiết lập một fiddle để chứng minh: http://jsfiddle.net/jdalton308/cLtyv803/7/

Cảm ơn sự giúp đỡ nào.

+0

thể trùng lặp của [? API Google Địa điểm - getQueryPredictions Giới hạn theo quốc gia/thành phố/Nhà nước] (http://stackoverflow.com/questions/13620308/google-places-api -quyền kiểm tra-giới hạn-by-quốc gia-thành phố-nhà nước) – hberg

Trả lời

5

Theo documentationgetQueryPredictions() chấp nhận đối tượng QueryAutocompletionRequest - chỉ đơn giản là không có tài sản componentRestrictions.

Vì vậy, nếu bạn muốn sử dụng số componentRestrictions, bạn cần sử dụng phương thức getPlacePredictions() với đối tượng AutocompletionRequest chấp nhận.

này nên làm việc:

autoComplete.getPlacePredictions(searchObj, function(predictions, status) { 
    //... 
     $scope.response = predictions;     
}); 
Các vấn đề liên quan