给定的代码会将google.maps.Marker添加到居中的地图中。超过一秒后,当调用marker.setDraggable(true)时,标记消失,并且在控制台中抛出错误未捕获的TypeError:a.lat不是函数。
如果 {draggable:true} 直接设置为标记的属性,则会发生错误并且标记也不会显示。对于"动画"也是如此。属性。
这段代码两个月前就开始运作了。
有什么建议吗?
$scope.$on('mapInitialized', function (event, map) {
$scope.map = map;
map.setOptions({
mapTypeId: google.maps.MapTypeId.ROADMAP,
minZoom: 3
});
_initializeMapMarker();
});
var _initializeMapMarker = function () {
var buildingPos = new google.maps.LatLng(parseFloat($scope.vm.Latitude), parseFloat($scope.vm.Longitude));
$scope.map.setCenter(buildingPos);
marker = new google.maps.Marker({
map: $scope.map,
//draggable: true, // <---------- Uncaught TypeError: a.lat is not a function
//animation: google.maps.Animation.DROP, // <---------- Uncaught TypeError: a.lat is not a function
position: buildingPos
});
setTimeout(function () {
marker.setDraggable(true); // <---------- Uncaught TypeError: a.lat is not a function
},1000);
}