使用谷歌地图获取地名,而不是创建标记

Using google maps to get name of places instead of creating markers

本文关键字:创建 谷歌地图 获取      更新时间:2023-09-26

我正在使用Google Places API发出以下请求

var request = {
       bounds: boxes[searchIndex],
       types: ["city_hall","local_government_office","library"]
   };

然后我提出要求

service.radarSearch(request, function (results, status) {
   if (status != google.maps.places.PlacesServiceStatus.OK) {
     alert("Request["+searchIndex+"] failed: "+status);
     return;
   }
   for (var i = 0, result; result = results[i]; i++) {
      //don't create marker but simply print the name of that place ???
     // var marker = createMarker(result);
   }

我想简单地打印该位置的名称,而不是创建标记。我该怎么做。我试过result.name但我得到了undefined });

来自雷达搜索的文档

雷达搜索允许您按关键字、类型或名称搜索指定搜索半径内的地点。雷达搜索返回的结果多于邻近搜索或文本搜索,但结果包含的字段较少。您可以调用 PlacesService.getDetails() 以获取有关响应中任何位置的更多信息。

radarSearch() 返回的 PlaceResult 对象仅包含以下属性:

  • 几何.位置
  • place_id
  • 参考(注意:参考已弃用,有利于place_id,如本页弃用通知中所述。

没有名称属性。 要获得它,您必须对返回的每个结果进行详细信息请求。

若要在不发出其他详细信息请求的情况下获取结果中的 name 属性,请使用 nearSearch,该搜索限制为 60 个结果,每批 20 个。