[英]Google Maps Api markers array node.js
我正在嘗試傳遞將數組帶到Google Maps api v3的函數。 這是我的代碼:
function buscarCoords(callback){
var result = result;
connection.query('SELECT * FROM monitoreo_actual', function(err, result){
if(err){
console.log(err);
}
callback({result:result});
});
}
function initialize() {
//var location = new google.maps.LatLng(10.191, -68.191);
var mapOptions = {
center: new google.maps.LatLng(10.191, -68.191),
zoom: 8,
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
marker = new google.maps.Marker({
position: buscarCoords(function(resultsObject){
new google.maps.LatLng(ConvertFromGrdToGoogle(resultsObject.result).LtLn);
}),
map: map
});
}
在這段代碼中,ConvertFromGrdToGoogle是一個函數,正如其所說,它將數據轉換為Google可以接受的格式。 它可以正常工作並返回如下坐標:
[ '10.1850, -68.334',
'10.1850, 68.334',
'10.1853, -68.334',
'10.1853, -68.334' ]
現在的問題是,即使地圖加載,它也不會顯示標記。
當您從數據庫中獲取數據時,您需要創建標記,此代碼應該對您有用 ,您可以看到在http://jsfiddle.net/victorv977/vX3Lc/上的工作:
function initialize() {
//var location = new google.maps.LatLng(10.191, -68.191);
var mapOptions = {
center: new google.maps.LatLng(10.191, -68.191),
zoom: 8
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
buscarCoords(function(resultsObject) {
var coordsArray = ConvertFromGrdToGoogle(resultsObject.result);
for (var i = 0; i < coordsArray.length; i++) {
var coords = coordsArray[i].split(", ");
new google.maps.Marker({
position: new google.maps.LatLng(parseFloat(coords[0]), parseFloat(coords[1])),
map: map
});
};
});
}
function buscarCoords(callback) {
var result = result;
connection.query('SELECT * FROM monitoreo_actual', function(err, result){
if(err){
console.log(err);
}
callback({result:result});
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.