我目前正在使用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);
答案 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个结果,因此可能会让最终用户感到困惑,因为在您输入相当多的字母之前,根本不会显示任何内容。