Google Places Autocomplete加载失败,地区自动补全功能异常求助
Google Places 地区自动补全故障排查与修复
你的需求是实现仅包含地区类别的自动补全,目前代码无法正常运行,且已确认API密钥无限制、计费正常、Maps JavaScript API及Places API已启用。以下是针对性的排查和修复方案:
核心问题:类型参数格式错误
你使用的types: ["regions"]不符合Google Places API的参数规范——集合类型需要用括号包裹,正确写法应为types: ["(regions)"]。
修正后的完整代码:
<html lang="it"> <head> <script async src="https://maps.googleapis.com/maps/api/js?key=AIzaSyDBXQ0UdiwiaaaaaaaaaaaaaaWQo&libraries=places&callback=initMap"> </script> <title>Test per google autocomplete</title> </head> <body> <input id="store_locator_autocomplete" type="text" size="50"> <script> function initMap() { const googleAutocomplete = document.getElementById("store_locator_autocomplete"); const options = { types: ["(regions)"], // 修正集合类型的格式 }; const autocomplete = new google.maps.places.Autocomplete(googleAutocomplete, options); } </script> </body> </html>
额外排查与优化建议
- 检查控制台详细错误:页面提示的“此页面无法正确加载Google Maps.”属于通用错误,打开浏览器开发者工具控制台,查看是否有更具体的报错信息(如库加载失败、权限相关提示)。
- 限定地区范围:如果仅需意大利地区的补全结果,可添加
componentRestrictions参数缩小范围:const options = { types: ["(regions)"], componentRestrictions: { country: "it" } };
附:原始意大利语错误信息中文翻译:“此页面无法正确加载Google Maps.”
内容的提问来源于stack exchange,提问作者Diego
相关产品推荐
相关产品推荐

