你如何通过ajax请求加速加载许多部分?

时间:2018-02-16 21:29:03

标签: javascript jquery ruby-on-rails ruby ajax

如果我正在执行ajax请求,加载部分由于某种原因非常慢。例如,在一个全新的Rails 5.1.4应用程序中,我有类似的东西:

配方/ index.html.erb

<% 100.times do %>
   <%= render "abc" %>
<% end %>

配方/ _abc.html.erb

Lorem Ipsum

我的routes.rb有:

get "/recipes" => "recipes#index"

现在,当我调用ajax请求时:

$.ajax({
   type: 'GET',
   url:  "/recipes",
   dataType: 'text',
});

每个部分加载速度非常慢(与没有ajax直接转到页面相比)。也就是说,我在控制台中看到了这些行:

  Rendered recipes/_abc.html.erb (0.1ms)
  Rendered recipes/_abc.html.erb (0.0ms)
  Rendered recipes/_abc.html.erb (0.0ms)
  Rendered recipes/_abc.html.erb (0.1ms)
  Rendered recipes/_abc.html.erb (0.0ms)
  Rendered recipes/_abc.html.erb (0.1ms)
  Rendered recipes/_abc.html.erb (0.1ms)
  Rendered recipes/_abc.html.erb (0.0ms)

每条线需要1秒钟来处理(尽管括号中的时间是这样的)。如果我在浏览器上重新加载而不是ajax请求(或者如果我单击指向/ recipes页面的链接),则每行需要一小段时间才能加载。

是否有更快的方法通过ajax请求加载这些部分?

0 个答案:

没有答案