0

申し訳ありませんが、この質問をしている理由は、コーヒー スクリプトにあまり慣れていないからかもしれません。最新の gmaps4rails では、https://github.com/apneadiving/Google-Maps-forのコーヒー スクリプトで指定した関数を使用する代わりに、マップとマーカーを作成した後にマーカーを変更するための直接的な API がありますか? -Rails/wiki/Change-handler-behavior

つまり、マーカーを近接を示す透明な円に変更するなど、マーカーを動的に変更したい場合です。

以下のコードに問題はありますか。インデントは重要ですか?

class RichMarkerBuilder extends Gmaps.Google.Builders.Marker #inherit from builtin builder
  #override create_marker method
  create_marker: ->
    options = _.extend @marker_options(), @rich_marker_options()
    @serviceObject = new RichMarker options #assign marker to @serviceObject

  rich_marker_options: ->
    boxText = document.createElement("p")
    boxText.setAttribute("class", 'heat-map-eclipse')
    _.extend(@marker_options(), { content: boxText, flat: true })

@buldMap= (markers)->

 handler = Gmaps.build 'Google', { builders: { Marker: RichMarkerBuilder} } #dependency injection

 #then standard use
 handler.buildMap { provider: {}, internal: {id: 'map'} }, ->
   markers = handler.addMarkers(markers)
   handler.bounds.extendWith(markers)
   handler.fitMapToBounds()
4

1 に答える 1

0

私はちょうど試しました:

class MarkerBuilder extends Gmaps.Google.Builders.Marker

  create_marker: ->
    options = _.extend @marker_options(), @rich_marker_options()
    @serviceObject = new RichMarker options

  rich_marker_options: ->
    boxText = document.createElement("p")
    boxText.setAttribute("class", 'heat-map-eclipse')
    _.extend(@marker_options(), { content: boxText, flat: true })

そして、それは私に与えます:

ここに画像の説明を入力

だから、すぐに使えると思いますよね?

しかし、あなたは間違ったアプローチをしています: マーカーは、定義上、常に同じ寸法を保ちます

于 2014-02-12T09:21:33.060 に答える