小编big*_*dot的帖子

Rails 5 使用 will_paginate 创建加载更多按钮

所以我正在尝试创建一个加载更多按钮(不是无限滚动,尽管一些简单的 js 调整可以做到这一点)。我在 Rails 5 中使用 will_paginate gem。

它目前都按预期工作,除了当我单击加载更多时,它会加载下一页帖子两次,例如: 加载更多 > 帖子 4、帖子 5、帖子 6、帖子 4、帖子 5、帖子 6

仅供参考,我的“帖子”是@links:

links_controller.erb

def index
  @links = Link.order('created_at DESC').paginate(:page => params[:page], :per_page => 3)
  respond_to do |format|
    format.html
    format.js
  end
end
Run Code Online (Sandbox Code Playgroud)

意见/链接/index.html.erb

<div class="link-wrap">
  <%= render @links %>
</div>
<% if @links.next_page %>
  <div class="link more">
    <%= link_to 'Load More', links_path(:page => @links.next_page), :class => 'next_page', :remote => true if @links.next_page %>
  </div>
<% end %>
Run Code Online (Sandbox Code Playgroud)

pagination.js.coffee

$ ->
  $('.next_page').on 'click', (e) -> …
Run Code Online (Sandbox Code Playgroud)

javascript ruby-on-rails will-paginate ruby-on-rails-5

5
推荐指数
1
解决办法
2080
查看次数