0

Gmaps4Rails v.2 で情報ウィンドウを表示する代わりに、クリックしてオブジェクトの URL に移動したいと考えています。そこで、Gmaps4Rails v.1 ではこのように{link: <path>}、各マーカーの json に余分な部分を追加してから、イベント リスナーを再調整するように設定しました。

これはMake map marker direct link onclick for gmaps4railsと非常によく似ていますが、ここでは Gmaps4Rails v.2 のみです (完全に書き直されているため、まったく異なる方法のコードを混在させるよりも、適切な質問の方が適切だと思います)

Gmaps4Rails v2 でカスタム json を導入するには、

  @markers = Gmaps4rails.
              build_markers(objects) do |object, marker|
    marker.lat object.latitude
    marker.lng object.longitude
    marker.json({link: object_path(object)})
  end

イベント ハンドラーを変更するには、addMarker 呼び出しの直後にこの coffeescript を追加する必要があります。

          markers = handler.addMarkers(#{raw @markers.to_json})

          _.each markers, (marker) ->
            link = < retrieve link from marker somehow?! >
            google.maps.event.clearListeners(marker.getServiceObject(), 'click')
            google.maps.event.addListener marker.getServiceObject(), "click", ->
              window.location = link
            return

残念ながら、リンク json はマーカーに追加されていないか、別の方法でアクセスする必要があるようです。それはどのように行われるべきですか?

4

1 に答える 1