gpt4 book ai didi

javascript - 谷歌地图第二次不渲染

转载 作者:行者123 更新时间:2023-11-27 23:03:15 29 4
gpt4 key购买 nike

我正在使用 Controller 在我的应用程序中显示谷歌地图。当我第一次加载页面时, map 渲染正确。但是当我第二次尝试时, map 未加载。它显示出灰色区域。我尝试了不同的解决方案,例如触发调整大小事件。但运气不好。

这是我在 Controller 中的initializeMap()

                $scope.initializeMap = function() {

var mapOptions = {
zoom : 4,
center : new google.maps.LatLng($scope.latitude,
$scope.longitude),

mapTypeId : google.maps.MapTypeId.ROADMAP
}

var mapsss = document.getElementById('map');

$scope.map = new google.maps.Map(mapsss, mapOptions);

$scope.markers = [];

var infoWindow = new google.maps.InfoWindow();

var createMarker = function(info) {

var marker = new google.maps.Marker({
map : $scope.map,
position : new google.maps.LatLng(
info.latitude, info.longitude),
title : info.name,
icon : info.icon
});
marker.content = '';

google.maps.event.addListener(marker, 'click',
function() {
infoWindow.setContent('<h2>'
+ marker.title + '</h2>');
infoWindow.open($scope.map, marker);
});

$scope.markers.push(marker);

}

for (i = 0; i < $scope.locations.length; i++) {

createMarker($scope.locations[i]);
}

$scope.openInfoWindow = function(e, selectedMarker) {
e.preventDefault();
google.maps.event.trigger(selectedMarker, 'click');
}

google.maps.event.trigger($scope.map, 'resize');
var myLatlng = new google.maps.LatLng(34.310774,
66.225586);
$scope.map.setCenter(myLatlng);

}

});

我不确定问题是什么。任何帮助将不胜感激。

最佳答案

最后我自己找到了解决方案:)这似乎是 map api 的一个问题或行为或任何问题,如果 div 被隐藏,它就无法正确渲染 map 。所以我删除了 div 中的 ng-show 并且它起作用了! map 正确渲染。

关于javascript - 谷歌地图第二次不渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36858228/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com