Javascript Google放置返回未定义照片请求
我有一个水平滚动条,它出现在地图上,每当通过Google Places请求特定的场馆并放置标记时 我的想法是,让这个水平滚动条使用GooglePlacesPhotoRequest显示每个返回场地的图片。然而,Google建议使用的.getUrl()方法返回了一个“未捕获类型错误:未定义不是函数”;虽然我确实收到了一组对象,每个对象都有一组照片 以下是我代码的一部分:Javascript Google放置返回未定义照片请求,javascript,google-maps,google-places-api,google-photos,Javascript,Google Maps,Google Places Api,Google Photos,我有一个水平滚动条,它出现在地图上,每当通过Google Places请求特定的场馆并放置标记时 我的想法是,让这个水平滚动条使用GooglePlacesPhotoRequest显示每个返回场地的图片。然而,Google建议使用的.getUrl()方法返回了一个“未捕获类型错误:未定义不是函数”;虽然我确实收到了一组对象,每个对象都有一组照片 以下是我代码的一部分: for (var i = 0, place; place = venueData[i]; i++) { if (p
for (var i = 0, place; place = venueData[i]; i++) {
if (place.photos) {
var photo = place.photos[0].getUrl({ 'maxWidth': 100, 'maxHeight': 100 });
$('.venues-display').append('<li><div class = venue-picture><img src='+photo+'></div></li>')
}
else {
$('.venues-display').append('<li><div class = venue-picture><img src='+ place.icon + '></div></li>')
}
for(var i=0,place;place=venueData[i];i++){
如果(地点、照片){
var photo=place.photos[0].getUrl({'maxWidth':100,'maxHeight':100});
$('.Vinces display')。追加(''))
}
否则{
$('.Vinces display')。追加(''))
}
我获取的错误指向带有getUrl()的行
venueData变量-是从Google Places文本搜索返回的对象数组
”。场馆显示“-是我的滚动条的类名
我是一个菜鸟…我变得绝望了,因为我不明白我做错了什么
Pleeease heeelp方法.getUrl()仅适用于Google Places库(换句话说,如果您调用.PlaceServices),您不需要使用API键
new google.maps.places.PlacesService(map)
否则,您需要使用以下代码获取照片:
https://maps.googleapis.com/maps/api/place/photo?parameters
至少通过阅读Google文档和出于相同原因使用不同的代码,我了解到了这一点我觉得你的代码没问题。你可以尝试检查place.photo对象,例如.alert(place.photo[0].getUrl),以确保它返回一个对象。如果没有,请尝试alert(place.photo[0])。使用
If(place photos.length)
而不是if(place.photos)
谢谢大家的回复。我刚在控制台中打印出照片对象时发现它们没有getUrl()方法..可能是因为我使用rails而不是google的JS搜索方法来请求场地。我使用了Places库,包括使用google的JS方法进行地点搜索,这样照片对象就有了getUrl方法,并且可以工作…再次感谢