javascript - Google地图 API Infowindow显示Google地方API信息

  显示原文与译文双语对照的内容

我不确定该怎么做。

我想要的是:我想要显示你可以能发现的信息,如果你去 https://www.google.com/maps for,搜索农民市场。

我需要一个信息窗口,提供地址。操作时间以及 谷歌地图 提供给这里业务的额外信息。

现在我有了一个 Angular JS代码 block,它填充了如下所示的array:


var locations = [
 ['Findlay Market', 39.115398, -84.518481, 5],
 ['Hyde Park Farmers' Market', 39.139601, -84.442496, 4],
 ['Lettuce Eat Well Farmers' Market', 39.166134, -84.611613, 3],
 ['College Hill Farm Market', 39.195641, -84.545453, 2],
 ['Anderson Farmers' Market', 39.078364, -84.350539, 1]
];

然后我使用Infowindow来显示农民的市场名称。

我知道我可以将一个新表添加到数据库中,以及它的他信息,并用于创建 Angular JS卡。 但是我希望有一种方法可以使用谷歌地图API和谷歌地方API来获取该信息,而不是将它的存储在我的数据库中。

感谢 uksz,我可以使用 below 代码来帮助我获取所需信息。


<!DOCTYPE html>
<html>
 <head>
 <title>Place details</title>
 <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
 <meta charset="utf-8">
 <style>
 html, body, #map-canvas {
 height: 100%;
 margin: 0px;
 padding: 0px
 }
 </style>
 <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true&libraries=places"></script>
 <script>
 function initialize() {
 var map = new google.maps.Map(document.getElementById('map-canvas'), {
 center: new google.maps.LatLng(39.115398, -84.518481),
 zoom: 15
});

var request = {
 location: map.getCenter(),
 radius: '500',
 query: 'Findlay Market'
};

var service = new google.maps.places.PlacesService(map);
service.textSearch(request, callback);

function callback(results, status) {
 if (status == google.maps.places.PlacesServiceStatus.OK) {
 var marker = new google.maps.Marker({
 map: map,
 place: {
 placeId: results[1].place_id,
 location: results[1].geometry.location
 }
 });
 var infowindow = new google.maps.InfoWindow();
 google.maps.event.addListener(marker, 'click', function() {
 var content = results[1].name + '<br>' + 
 results[1].formatted_address + '<br>' +
 results[1].opening_hours + '<br>' +
 results[1].place_id + '<br>';
 infowindow.setContent(content);
 infowindow.open(map, this);
 });
 }
 }
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
 <body>
 <div id="map-canvas"></div>
 </body>
</html>

时间: 原作者:

所以我不知道是否正确地理解了你的问题,但是如果你只想显示来自,的信息,可以使用它们的getDetails() 函数。 这将返回一个对象。 如果不想存储对象,为什么不只在每次用户切换视图时删除对象。 这样你就不会在数据库中存储这里信息,至少不会永久保存。

有一个好的 !

这是他们的完整 getDetails() 手册:

https://developers.google.com/maps/documentation/javascript/places#place_details_requests

原作者:
...