这只是我还是谷歌地图api似乎是古怪的一面? 尝试简单地显示某些坐标的标记,然后将屏幕置于标记中心。
在我的控制器中从视图中触发:
onGoogleMapRender: function (googleMap) {
var long = record.get("Longitude");
var lat = record.get("Latitude");
var pos = new google.maps.LatLng(lat, long);
var marker = new google.maps.Marker({
position: pos
});
marker.setMap(googleMap);
googleMap.setCenter(marker.getPosition());
googleMap.setZoom(14);
}
似乎将标记放在屏幕的中央,但当我返回并在第2次或第3次显示相同的屏幕时,标记会被添加,但这次标记不会居中。
有没有人让这个工作正常?我不认为它与任何ST2有关,但更多的是谷歌api的怪癖。
答案 0 :(得分:3)
你需要以一个很小的超时为中心,而不是工作正常。
setTimeout(function() {
googleMap.panTo(marker.getPosition());
}, 100);
我不知道这是不是一个错误,但这种方式显示在展示中。