Google API自动填充功能,只有一种地区类型

时间:2018-02-07 23:28:55

标签: javascript google-maps google-maps-api-3 autocomplete google-maps-autocomplete

我目前正在使用google apis API自动填充位置。我可以将其设置为仅返回区域类型为" autocomplete.setTypes([' regions'])" 。查看文档,我可以看到区域类型将返回包含以下类型的所有结果;
*地方
* sublocality
* postal_code
*国家
* administrative_area1
* administrative_area2

我想要实现的目的是仅返回区域类型" sublocality"的自动完成预测。这可能吗?如果没有人有类似的问题,并有他们建议的替代解决方案?谢谢。

var autocomplete = new google.maps.places.Autocomplete(input);

var types = ['(regions)'];

var options = {
    componentRestrictions: {country: 'uk'}
};

autocomplete.setTypes(types);
autocomplete.setOptions(options);

   

1 个答案:

答案 0 :(得分:0)

可以过滤您的查询预测结果,只显示(或做任何您喜欢的事情,因为我们不知道您要做什么)预测是否有类型为sublocality,因为每个结果都附带一个types数组。

类似的东西:

// Build output for each prediction
for (var i = 0, prediction; prediction = predictions[i]; i++) {

  if (prediction['types'].includes('sublocality')) {

    // Display it or do what you need to do here
  }
}

请记住,虽然查询预测只返回最多5个结果,因此可能会让最终用户感到困惑,因为在您输入相当多的字母之前,根本不会显示任何内容。