检测街道地址是否丢失

时间:2015-05-22 08:40:20

标签: javascript angularjs google-maps-api-3 google-places

我正在使用ngAutocomplete https://github.com/wpalahnuk/ngAutocomplete来获取地址

的搜索结果

但有没有办法确保所挑选的项目有街道地址?

例如:http://plnkr.co/edit/GE34ojss9xMGm0024FvM?p=preview

<div class="form-group move-down">
    <label for="Autocomplete">Generic Autocomplete</label>
    <input type="text" id="Autocomplete" class="form-control" ng-autocomplete ng-model="result1" />
</div>
<div>result: {{result1}}</div>

它让我只选择没有地址的街道名称。我希望能够使此选项无效。

enter image description here

更新1

我正在考虑这样的地方,我可以获得街道号码。如果它是空的,那么它是无效的:

http://ubilabs.github.io/geocomplete/examples/custom_attribute.html

2 个答案:

答案 0 :(得分:0)

你可以做的就是玩supported types。 您需要指定名为“options”的属性:

 <input type="text"  ng-autocomplete ng-model="autocomplete" options="options" details="details/>

并在范围内提供选项对​​象:

$scope.options = {
  country: 'gb',
  types: 'address'
};

以上内容可让您在英国境内过滤“具有精确地址的结果”。 “精确地址”的含义完全取决于Google API。

答案 1 :(得分:0)

我明白了:http://plnkr.co/edit/fah9XvCy9Yp0Bd3i3GKE?p=preview

var geocoder = new google.maps.Geocoder();

$scope.$watch('result1', function() {
  console.log('$scope.result1:');
  console.log($scope.result1);
  geocoder.geocode({
    address: $scope.result1
  }, function(result, status) {
    console.log(result);
    console.log(status);
  });
});