1

私は gmaps4rails gem の大ファンで、うまく機能し、非常に柔軟です。

ただし、クラスターマーカーを簡単にクリアおよび更新できないようで、この宝石を使用している Stackoverflow で同様のソリューションを見つけることができません。

私の JavaScript では、次のメソッドを使用して可視マーカーを除外しています。しかし、Gmaps.map.clearClusterer はクリック イベントに応答していないようです。マーカーを適切に表示および非表示にすることはできますが、クラスター マーカーをクリアしたり、クラスター マーカーを新しい番号で更新したりすることはできません。どうすればいいですか?

  var VisibleMarker=function(){
    var filtered=_.filter(Gmaps.map.markers,function(marker){   
       return marker.building_type == SELECT;
     }); //end of _.filter
    return filtered
  }//end of VisibleMarker

  var applyFilters=function(){
    var VisibleArray=VisibleMarker()
    _.each(Gmaps.map.markers,function(marker){
         Gmaps.map.hideMarker(marker)
     })
        Gmaps.map.clearClusterer()
    _.each(VisibleArray,function(marker){
         Gmaps.map.showMarker(marker)
     }) 
        Gmaps.map.createClusterer(VisibleArray)

   };//end of applyFilters

アップデート:

MarkerClusterer クラスで addMarkers() メソッドを正しく呼び出すにはどうすればよいですか? http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/docs/reference.html

私はこの行を使用しました:

Gmaps.map.addMarkers(VisibleArray)

ただし、代わりにこの関数を呼び出します。

Gmaps4Rails.prototype.addMarkers = function(new_markers) {
this.markers = this.markers.concat(new_markers);
this.create_markers();
return this.adjustMapToBounds();
}; 
4

0 に答える 0