0

当我尝试运行时,rake assets precompile我收到此错误:Unexpected token: operator (>). 我发现这是因为 index.js.erb,因为将文件名更改为 .html.erb 使其可以编译。这是 index.js.erb 的内容:

$('#haikus').append('<%= j render(@haikus) %>');
<% if @haikus.next_page %>
$('.pagination').replaceWith('<%= j will_paginate(@haikus) %>');
<% else %>
$('.pagination').remove();
<% end %>

haikus.js.coffee:

jQuery ->
if $('.pagination').length
      $(window).scroll ->
              url = $('.pagination .next_page').attr('href')
              if url &&  $(window).scrollTop() > $(document).height() - $(window).height() - 200
                      $('.pagination').html('Loading...')
                      $.getScript(url)
$(window).scroll()

index.html.erb:

<div id="haikus">
<%= render @haikus %>
</div>
<div class="row pagination">
<div class="large-12 columns">
    <%= will_paginate @haikus %>
</div>
</div>

如何修复它并使其编译?

谢谢!

4

1 回答 1

0

我怀疑这与它有很大关系:

将文件名更改为 .html.erb 使其编译

您是否尝试过从 js.erb 文件中删除逻辑?我真的在考虑will_paginate无法从 javascript 文件中调用的“”东西。也许您可以在文件中包含这一行并查看是否编译?

$('#haikus').append('<%= j render(@haikus) %>');

如果这不起作用,那么我们知道这与此有关;否则它很可能与 will_paginate 有关

于 2013-10-18T14:58:43.927 回答