Google 地图自动完成功能不在地址搜索中包含邮政编码

Google Maps Autocomplete doesn't include postcodes in address search

对于我当前的项目,我有一个地址查找功能供用户输入地址。在它的默认状态下,它的结果太模糊了,查找 returns 所有位置,即使它实际上不是一个地址(例如,列表中的一些位置是整个城市或地区)。

在查询中添加 types: ['address'] 解决了这个问题; Google 现在只响应实际地址而不是模棱两可的区域,然而 这使我们无法通过邮政编码进行搜索,正如这两个小提琴所展示的那样:

http://jsfiddle.net/yj6qvpsg/2/ 将列出整个城市和地区(不好),但您仍然可以搜索带有英国邮政编码的地址(好)。

http://jsfiddle.net/yj6qvpsg/1/ 只会列出地址(好),但不会搜索英国邮政编码(差)。

我们如何才能两全其美?我试着玩弄例如 types: ['address', 'postal_code'], 但没有运气......

所以事实证明,只有在英国,邮政编码才真正与街道级别的实际地址相关联(您可以从字面上给出门牌号和邮政编码作为完整有效的地址),而在欧洲其他地区邮政编码代表整个区域,因此 Google 将邮政编码视为整个区域。

也许有一天他们会为英国破例,但与此同时,如果你真的需要这个功能,另一种选择可能是看看这样的东西:https://getaddress.io/ 如果像我们一样可能会很糟糕你的整个数据结构是为了匹配 Google 的