我有一个包含30多个位置的数组,我想在地图上显示。但是,我没有找到一个演示如何迭代数组以便标记出现在地图上的源,而是选择严格硬编码地图lat / long值。
例如,这是我目前的代码,但它返回错误:
allLocations = root.table.rows().data()
root.forMap = []
for aLocation in allLocations
root.forMap.push(aLocation[9] + ', ' + aLocation[10])
$('#multi_markers').map ->
handler = Gmaps.build("Google")
handler.buildMap
internal:
id: "multi_markers"
, ->
markers = handler.addMarkers(root.forMap)
handler.bounds.extendWith markers
handler.fitMapToBounds()
注意:我不能简单地使用ruby方法,因为该表还必须与.js.coffee文件中的DataTable数据进行交互。
如何在gmaps4rails方法中循环遍历数组?
答案 0 :(得分:-1)
由于handler.addMarkers
采用数组,为什么不只是使用jQuery.map并预先构建一个标记数组?
all_locations = $.map root.table.rows().data(), (row)->
return {
lat: row[9],
lng: row[10]
}
$('#multi_markers').map ->
handler = Gmaps.build("Google")
handler.buildMap
internal:
id: "multi_markers"
, ->
markers = handler.addMarkers(allLocations)
handler.bounds.extendWith markers
handler.fitMapToBounds()