栈细节 红宝石1.9.2p180, 导轨3.0.9, gmaps4rails 1.0.2, jquery.json-2.3.min.jsgmaps4rails不工作(JavaScript的)
背景replaceMarkers 我是gmaps4rails的新手,非常喜欢宝石。到目前为止,所有工作都很顺利,但我正在尝试第一次动态更新标记。我做了以下中的application.js:
var markers_json = $.toJSON(markers_array);
Gmaps.map.replaceMarkers(markers_json);
这并不工作,并提供了以下错误到目前为止
Uncaught TypeError: Cannot read property 'position' of undefined
extendBoundsWithMarkers in gmaps4rails.googlemaps.js:204
Gmaps4Rails.adjustMapToBounds in gmaps4rails.base.js:443
Gmaps4Rails.create_markers in gmaps4rails.base.js:321
Gmaps4Rails.addMarkers in gmaps4rails.base.js:389
Gmaps4Rails.replaceMarkers in gmaps4rails.base.js:381
调查完成
肯定,其初始通过将标记提供为json字符串来完成地图的创建。
证实,我给了相同的格式在replaceMarkers调用
证实,在源,当addMarkers被称为初始页面加载,标记是物体的形式JSON字符串阵列,但replaceMarkers呼叫(如我上面提到的)含有JSON字符串试图通过标记
其它尝试 而不转换到JSON
Gmaps.map.replaceMarkers(markers_array);
但这并没有奏效。
是的,我在这里有一个错误。更新到最新版本的宝石,并告诉我是否可以。 – apneadiving
好的,正在玩这个 - 通过升级到1.3.0来完成这项工作 - 当我传递一个JSON字符串来代替传递一个对象数组的JSON字符串时仍然遇到问题。 – Param
只需要一个数组。 '[{json_string},{json_again}]'应该没问题。 – apneadiving