2013-10-18 60 views
0

當我嘗試運行rake assets precompile時出現此錯誤:。 我想通過這是因爲index.js.erb,因爲將文件的名稱更改爲.html.erb使它編譯。 這是index.js.erb的內容:.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> 

我怎樣才能解決這個問題並使其編譯?

謝謝!

+1

哪一行是錯誤? –

+0

錯誤是在行15748(完全錯誤:意外的令牌:操作符(>)(行:15748,col:8,pos:468462) – figdig

+0

大聲笑確定沒有那麼有用,因爲我曾希望它會是:( –

回答

0

我懷疑這有很多用它做:

changing the name of the file to .html.erb made it compile

你試過從js.erb文件中刪除邏輯是什麼?我真的想着「will_paginate」的東西不能從JavaScript文件中調用。也許你可以在文件&中看到這行是否可以編譯?

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

如果這不起作用,那麼我們知道這是與此有關;否則它會與will_paginate最有關

+0

它預先編譯,如果我離開這行代碼,所以它與will_paginate – figdig

+0

有什麼關係爲什麼你不試試把這些代碼放入你的js.erb:<%if @ haikus.next_page%> alert(「next page」 ); <% end %> - >看看是否編譯 –

+0

你可能會遇到的問題是will_paginate是我認爲will_paginate僅適用於views&controllers;而不是JS或模型我不完全確定 –