Rails 4.2.1 - AJAX调用上非常慢的图像资源

时间:2015-06-30 19:16:42

标签: ruby-on-rails ajax ruby-on-rails-4

我有一个表单和AJAX调用来加载一些内容。这触发了这个JS:

$('#load_search').fadeIn().html("#{escape_javascript(render :partial => 'products/search')}");

在产品/搜索中我有一个简单的循环:

- @products.each do |product|
   %h1= product.name
   = image_tag product.image_url

AJAX调用大约需要8秒钟才能加载24个产品!如果我删除了image_tag,则会在300毫秒内完成。为什么需要8秒钟?那是因为资产需要在ajax调用完成之前加载吗?

1 个答案:

答案 0 :(得分:0)

尝试查看rails日志中的时间,以及firebug的Net选项卡。这应该让你了解大部分时间是在拍摄图像,还是通过网络传输图像等。

我曾经在这样的ajax请求中渲染部分内容,但现在我正在转向使用主干并在句柄(clientside JS)模板中呈现记录。您可能会发现这种方法对于提高性能以及防止javascript和ruby彼此混淆是有帮助的。