gmaps4rails在显示视图中

用户名

我想在展示视图中放置gmaps4rails地图,但是在用当前点位置构建标记时遇到了问题。我找不到关于该主题的任何内容。有可能吗?(很抱歉成为一个完整的初学者)

到目前为止,这就是我尝试过的方法。

def show
 @comments = @spot.comments
 @photos = @spot.photos

@hash = Gmaps4rails.build_markers(@spot) do |spot, marker|
   marker.lat spot.latitude
   marker.lng spot.longitude
   marker.infowindow spot.name
end

编辑:

看法:

<script src="//maps.google.com/maps/api/js?v=3.13&amp;sensor=false&amp;libraries=geometry"          type="text/javascript"></script>
<script src='//google-maps-utility-library-v3.googlecode.com/svn/tags/markerclustererplus/2.0.14/src/markerclusterer_packed.js' type='text/javascript'></script>


 <div class="container">
  <p id="notice"><%= notice %></p>
 <div class="row galleria">
 <%= render_gallery_for @photos %>
  </div>


<div style='width: 800px;'>
    <div id="map" style='width: 800px; height: 400px;'></div>
  </div>   

  <script type="text/javascript">
  handler = Gmaps.build('Google');
  handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
    var marker = handler.addMarker(<%=raw @hash.to_json %>);
   handler.map.centerOn(marker);
  }); 
</script>

...
呼吸暂停

您必须替换为addMarkeraddMarkers因为要传递的arg是一个数组。

addMarker如果传递对象,则可以使用


但是,如果您使用addMarkers将代码更改为:

 var markers = handler.addMarkers(<%=raw @hash.to_json %>);
 handler.map.centerOn(markers[0]);

见plunkr

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章