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

时间:2015-01-06 18:20:47

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

我正在使用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        });

1 个答案:

答案 0 :(得分:0)

来自radarSearch

的文档
  

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

     

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

  • geometry.location
  • place_id
  • 引用(注意:不推荐使用该引用以支持place_id,如本页的弃用通知中所述。)

没有名称属性。为此,您必须对返回的每个结果执行详细信息请求。

要在结果中获取name属性而不另外提供详细信息请求,请使用nearbySearch,限制为60个结果,批量为20个。