2013-03-15 206 views
1

我想要移植一些我在rails 3.2應用中寫入ruby的d3.js代碼。我似乎已經移植了除rails之外的所有內容,但不會加載d3.js,即使它加載了我所有javascript的其餘部分。d3.js不加載Rails資產管道

在development.rb

我:

config.assets.compress = false 
    config.assets.debug = true 

我都試過,包括它既通過的application.js以及在使用

- content_for :javascript_include do 
    = javascript_include_tag 'ems/reports/floor_logs/d3' 
在這兩種情況下

script標籤我的觀點將它添加得到正確包含在我的呈現源

<script src="/assets/d3.js?body=1" type="text/javascript"></script> 

和rails服務器記錄它呈現與200好吧。

但是在控制檯中它表示GET失敗。當我在瀏覽器中加載js:3000/assets/d3.js的url時,它會快速加載文件的文本,但會繼續無限加載。

此外,如果我從d3.js中獲取代碼並將其發佈到另一個正常加載的JavaScript文件中,否則會導致該文件具有相同的問題。

+0

我想這可能會有問題,因爲d3.js包含源代碼中的UTF-8符號(例如pi常量)。但我沒有太多有關如何避免這種情況的信息。 幾分鐘前,我已經下載了d3.v3.zip,將其解壓到供應商/資產並將其添加到我的application.js鏈輪需要聲明。它很好。 – 2013-03-15 16:05:28

+0

感謝您的答覆。縮小版本沒有非UTF字符,並給我完全相同的問題。 – 2013-03-15 17:51:40

回答

0

雖然我仍然不完全確定爲什麼我無法通過資產管道成功地爲d3js服務(也許與https有關),但我可以通過使用託管版本的d3js來獲得我的代碼。

= javascript_include_tag '//cdnjs.cloudflare.com/ajax/libs/d3/3.0.8/d3.min.js'