Uncaught RangeError: превышен максимальный размер стека вызовов

Итак, я пытаюсь реализовать функцию, позволяющую пользователям искать поставщиков при входе в систему. Я использую геокодер и gmap4rails. Однако, когда я настраиваю карту и пытаюсь запустить приложение, карта вообще не отображается.

это мой взгляд:

    <%= form_tag dashboard_path, :method => :get do %>
<div class= "row">
  <p>
    <%= text_field_tag :search, params[:search], class: "col-md-4"%>
    <%= submit_tag "Search Near", class: "btn btn-info", :name => nil  %>
  </p>
  </div>
<% end %>

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

<script type="text/javascript">
  handler = Gmaps.build('Google');
  handler.buildMap({ provider: {}, internal: {id: 'map'}}, function(){
  markers = handler.addMarkers(<%=raw @hash.to_json %>);
  handler.bounds.extendWith(markers);
  handler.fitMapToBounds();
  handler.getMap().setZoom(15);

});

</script>

контроллер для представления приборной панели:

def dashboard
    if params.empty?
        gflash notice: "you cant search without a term"
        redirect_to "/"

    elsif params[:search].present?
        @vendors = Vendor.near(params[:search], 50)
        @hash = Gmaps4rails.build_markers(@vendors) do |vendor, marker|
            marker.lat vendor.latitude
            marker.lng vendor.longitude
            marker.infowindow vendor.discount_info
            marker.picture ({
            "url" => "assets/marker.png",
            "width" => 32,
            "height" => 32})
       end
    else
        @vendors = Vendor.all
        @hash = Gmaps4rails.build_markers(@vendors) do |vendor, marker|
            marker.lat vendor.latitude
            marker.lng vendor.longitude
            marker.picture ({
            "url" => "assets/marker.png",
            "width" => 32,
            "height" => 32})

        end
    end

в режиме разработки, когда я открываю браузер и вхожу в веб-консоль, появляется ошибка:

Uncaught RangeError: Maximum call stack size exceeded

Я не уверен, что вызывает эту ошибку, я правильно установил размер карты.


person KhoaVo    schedule 12.05.2016    source источник
comment
Видите ли вы какие-либо ошибки в консоли Javascript вашего браузера?   -  person pgaspar    schedule 13.05.2016
comment
@pgaspar Я включил ошибки из веб-консоли   -  person KhoaVo    schedule 13.05.2016


Ответы (1)


Решил проблему. Код перешел в бесконечный цикл, вызывая сбой gmap, если параметр поиска пуст, он не знал, где установить маркер, поэтому я просто установил долготу и широту для этого случая.

person KhoaVo    schedule 13.05.2016