【发布时间】:2014-07-04 02:54:00
【问题描述】:
我正在使用google-maps-for-rails (gmap4rails)。 gem 有一个方法可以创建一个数组以在 javascript 中使用。
hash = Gmaps4rails.build_markers(@users) do |user, marker|
marker.lat user.latitude
marker.lng user.longitude
end
这会导致以下结果:
[{:lat=>33.462209, :lng=>-86.812519, :infowindow=>"hello"}]
或者更容易阅读
[
{
:lat => 33.462209,
:lng => -86.812519,
:infowindow => "hello"
}
]
我试图在咖啡脚本中使用它,但是我将这个数组从我的控制器中的一个变量传递到咖啡脚本中。 (我将 Paloma JS 用于特定于页面的 js,您可以在其中访问咖啡脚本中的控制器变量。)
我尝试将数组转换为 JSON 并使用gsub 替换字符,但我遇到了困难。
具体来说,我尝试转换为 JSON,然后删除逗号,hash.to_json.gsub(/,/, ''),输出
[{"lat":33.462209"lng":-86.812519"infowindow":"hello"}]
我想我需要在这里删除括号 { 和 },并可能包括正确的咖啡脚本行缩进。
最后应该是这样的:
[
lat: 33.462209
lng: -86.812519
infowindow: "hello"
]
有什么想法吗??谢谢你的时间。
【问题讨论】:
-
你说你最后需要的'数组'不是数组。你确定这就是你想要的吗?
标签: javascript ruby-on-rails json coffeescript