我正在使用gmaps4rails gem(版本 1.5.6),我想添加向地图添加更多折线的功能,而不是替换已经存在的折线。在 github 上,此代码可在此处查看。
标记已经存在此功能:
Gmaps.map.replaceMarkers(your_markers_json_array);
Gmaps.map.addMarkers(your_markers_json_array);
。
标记功能似乎分布在两个地方:
1)在gmaps4rails.base.js中:
Gmaps4Rails.prototype.addMarkers = function(new_markers) {
this.markers = this.markers.concat(new_markers);
this.create_markers();
return this.adjustMapToBounds();
};
2)在gmaps4rails.base.js.coffee中:
#add new markers to on an existing map
addMarkers : (new_markers, adjustBounds = true) ->
#update the list of markers to take into account
@markers = @markers.concat(new_markers)
#put markers on the map
@create_markers()
@adjustMapToBounds() if adjustBounds
我想我可以使用replacePolylines
代码来进行自己的addPolylines
调用:
1)在gmaps4rails.base.js附近的replacePolylines
代码为:
Gmaps4Rails.prototype.addPolylines = function(new_polylines) {
this.polylines = this.polylines.concat(new_polylines);
this.create_polylines();
return this.adjustMapToBounds();
};
2)在gmaps4rails.base.js.coffee附近的replacePolylines
代码为:
#add new polylines to on an existing map
addPolylines : (new_polylines) ->
#update the list of polylines to take into account
@polylines = @polylines.concat(new_polylines)
#put polylines on the map
@create_polylines()
#.... and adjust map boundaries
@adjustMapToBounds()
我已经对已添加到我的 Rails 项目中的 gem 进行了这些更改,并且我已经重新启动了我的 Rails 服务器。replacePolylines
我用.的方式来称呼它Gmaps.map.addPolylines(your_polylines_json_array);
。它在控制台中产生错误:Uncaught TypeError: Object #<Gmaps4RailsGoogle> has no method 'addPolylines'
.
gmaps4rails 项目中似乎没有其他任何地方我必须为我的addPolylines
电话做任何事情,但我显然没有做正确的事情。任何人都可以根据这些信息解释我需要做什么才能使其正常工作吗?