我正在尝试将 react-rails 与 kaminari gem 一起使用。下面的代码负责创建带有分页的管理员页面,分页是一种 kaminari 方法:
#app/views/dashboard/admins/_admins.html.erb
<div id="admins_component">
<%= react_component 'Admins', {data: admins} %>
</div>
<%= paginate admins, :remote => true %>
在使用 remote=true 触发请求时,重新绘制整个内容,通过以下代码生成响应:
#app/views/dashboard/admins/index.js.erb
<% if @admins.present? %>
$("#admin_wrapper").html("<%= escape_javascript(render partial: 'admins', locals: { admins: @admins } ) %>");
React.render("Admins", "#admins_component"); //How to make this work???
<% end %>
在 ajax 请求之后,响应正确生成,并且 ReactComponent 也在页面的 HTML 中创建,如下所示:
<div data-react-class="Admins" data-react-props="{"data":[{"id":26,"email":"okokoko@kok.com","created_at":"2016-03-16T09:10:48.220Z","updated_at":"2016-03-16T09:10:48.220Z"}]}"></div>
但问题是组件没有被渲染/安装。我尝试通过控制台手动安装组件,但我不确定我是否正确执行此操作。