3

gmaps4rails v2 にアップグレードしています。javascript からマーカー json 属性にアクセスできないようです。これは、私が使用していた以前のバージョン(1.5.6)で機能しました

具体的には

コントローラーの組み込み: @users = User.all

@hash = Gmaps4rails.build_markers(@users) do |user, marker|
  marker.lat user.latitude
  marker.lng user.longitude
  marker.json({link: "someurl", current: true})
end

そしてJavaScriptで:

handler = Gmaps.build('Google');
handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
  markers = handler.addMarkers(<%=raw @hash.to_json %>);
  console.log(markers[0].link);
  console.log(markers[1].current);
  handler.bounds.extendWith(markers);
  handler.fitMapToBounds();
});

>undefined
>undefined

ありがとう

4

1 に答える 1

3

それは確かに新しい動作です。オブジェクトは変更されません。選択はあなた次第です。

あなたがすることができます:

markers_json = <%=raw @hash.to_json %>;
markers = _.map(markers_json, function(marker_json){
  marker = handler.addMarker(marker_json);
  _.extend(marker, marker_json);
  return marker;
});
于 2013-11-04T20:16:43.507 に答える