我有一个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
文件中。在控制台上,我可以直接调用此方法并显示地图。
为什么无法从帮助文件中调用它。我怀疑这可能是一个范围问题。有没有人有任何想法,为什么这会失败?帮助将不胜感激。谢谢。