为什么我的rails帮助文件无法识别我的javascript方法?

时间:2016-03-25 19:50:52

标签: javascript ruby-on-rails

我有一个edit.haml.html文件,里面有方法调用。方法调用如下所示:

!= map_init('map', @account.latitude ? 7 : 0)

map_init方法在rails帮助文件map_helper.rb中定义。 map_init' function then chains off to a map_script_load and map_js_initialization(id,zoom)`方法定义如下:

def map_init(id, zoom = 2)
  map_script_load + map_js_initialization(id, zoom)
end

def map_script_load
  key = Rails.application.config.google_maps_api_key
  uri = "#{request.ssl? ? 'https' : 'http'}://maps.googleapis.com/maps/api/js?v=3&key=#{key}"
  "<script src='#{uri}' type='text/javascript'></script>"
end 

 def map_js_initialization(id, zoom)
    javascript_tag <<-JSCRIPT
      $(document).ready(function() {
        Map.load('map', 25, 12, 2);
      });
    JSCRIPT
  end

我遇到的问题是当我的代码到达javascript_tag map_js_initialization时代码中断了。看一下控制台说

edit:1149 Uncaught TypeError: Map.load is not a function

当然,Map.load存在并位于我的map.js文件中。在控制台上,我可以直接调用此方法并显示地图。

为什么无法从帮助文件中调用它。我怀疑这可能是一个范围问题。有没有人有任何想法,为什么这会失败?帮助将不胜感激。谢谢。

0 个答案:

没有答案