【发布时间】:2015-03-06 03:31:27
【问题描述】:
我有一个地图和搜索框实例化并在搜索完成后放置一个标记。这工作正常,但是,我想查询位置服务以获取附近放置我的标记的位置,并且在运行时出现错误:google.maps.places.PlacesService(map) Uncaught TypeError: undefined is not a函数...
下面是一些相关代码 在我的 Angular.module.config 中:
uiGmapGoogleMapApiProvider.configure({
v: '3.17',
libraries: 'places'
});
在我的地图控制器中:
1) 加载时回调
uiGmapGoogleMapApi.then(function(maps) {
$scope.googleMapsObject = maps;
});
2) 设置事件处理程序以创建标记
$scope.searchbox = {
events: {
places_changed: placesChangedHandler
}
}
3) 处理地点发生变化,设置标记为 lat,(LAST LINE IS THE PROBLEM) 查询地点名称。
function placesChangedHandler(searchBox) {
var lat = searchBox.getPlaces()[0].geometry.location.k;
var lgn = searchBox.getPlaces()[0].geometry.location.C;
var center = { latitude: lat , longitude: lgn };
$scope.address = searchBox.getPlaces()[0].adr_address;
$scope.map = {
center: center, zoom: 15
};
setMarker(center);
var service = new google.maps.places.PlacesService($scope.googleMapsObject);
// service.nearbySearch(request, callback);
}
错误出现在倒数第二行。 (另外,有没有更简洁的方法来获取这些变量?)
提前感谢您的帮助!
【问题讨论】:
-
您找到解决方案了吗?我也是一样的情况!
标签: angularjs google-maps-api-3 angular-google-maps