2015-01-06 49 views
-1

來提出以下要求使用谷歌地圖獲得的地方名稱,而不是我使用谷歌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 });

回答

0

從文檔radarSearch

的雷達搜索,您可以根據關鍵詞來搜索,類型或名稱指定搜索半徑範圍內的地方。雷達搜索比附近搜索或文本搜索返回更多結果,但結果包含的字段更少。您可以調用PlacesService.getDetails()來獲取有關響應中任何位置的更多信息。

的組PlaceResult對象由radarSearch()返回只包括以下屬性:

  • geometry.location
  • place_id
  • 參考(注:參考有利於place_id的反對,因爲在本頁的棄權聲明中有所描述。)

There is no name pr operty。爲了得到你必須對返回的每個結果做詳細請求。

要獲得結果的name屬性不進行額外的細節要求,使用nearbySearch,它被限制爲60分的結果,在20

+0

批次由於在谷歌官方文件指出: 注意:雷達搜索已於2018年6月30日棄用。此後,此功能將不再可用。 –