2014-06-29 63 views
1

前段時間,我升級了我的應用程序(運行在heroku上)以使用資產管道。爲什麼我可以使用asset pipeline但require_tree。不起作用?

我將所有文件移動到應用程序/資產中,並列在app/assets/javascript/application.js中,並將其刪除。

當我推送到heroku的資產編譯和網站運作良好。

但是,如果我嘗試使用require_tree而不是列出文件,它不能在本地或在Heroku上運行。我確實得到了一個application.js文件,但它似乎充滿了jquery源代碼,我的代碼和我的js都不在任何地方工作。

我還試圖迫使jQuery的使用加載首先在依賴的情況下:

$ cat application.js 
// Place your application-specific JavaScript functions and classes here 
// This file is automatically included by javascript_include_tag :defaults 
// 
//= require jquery-1.7.2.min.js 
//= require jquery-ui-1.8.22.custom.min.js 
//= require_tree . 

,但它並沒有幫助。

如果我恢復到使用:

$ cat application.js 
// Place your application-specific JavaScript functions and classes here 
// This file is automatically included by javascript_include_tag :defaults 
// 
//= require_self 
//= require jquery-1.7.2.min 
//= require jquery-ui-1.8.22.custom.min 
//= require default_on_first_input_field 
//= require row_shading 
//= require long_or_short_details 
//= require sortable_hook 
//= require date-picker 
//= require rails 

,並推動這一生產,一切工作正常和各種JS是可用的。

在這兩種情況下,JS應用程序頁面包含在app/views/layouts/application.html.haml

= javascript_include_tag "application" 

我在本地得到同樣的問題require_tree。在這種情況下,我的javascript代碼段不工作,即使我有

<script src="/assets/jquery-1.7.2.min.js?body=1" type="text/javascript"></script> 
    <script src="/assets/jquery-ui-1.8.22.custom.min.js?body=1" type="text/javascript"></script> 
    <script src="/assets/date-picker.js?body=1" type="text/javascript"></script> 
    <script src="/assets/default_on_first_input_field.js?body=1" type="text/javascript"></script> 
    <script src="/assets/long_or_short_details.js?body=1" type="text/javascript"></script> 
    <script src="/assets/rails.js?body=1" type="text/javascript"></script> 
    <script src="/assets/row_shading.js?body=1" type="text/javascript"></script> 
    <script src="/assets/sortable_hook.js?body=1" type="text/javascript"></script> 
    <script src="/assets/application.js?body=1" type="text/javascript"></script> 

在HTML頭

由於應用程序最初導軌2.3.8,並已經直通許多升級有什麼,可能會導致這種行爲?

我看過的JavaScript控制檯,但沒有錯誤那裏似乎解釋它。

在頁面本身我結束了:

<script src="/assets/jquery-1.7.2.min.js?body=1" type="text/javascript"></script> 
    <script src="/assets/jquery-ui-1.8.22.custom.min.js?body=1" type="text/javascript"></script> 
    <script src="/assets/date-picker.js?body=1" type="text/javascript"></script> 
    <script src="/assets/default_on_first_input_field.js?body=1" type="text/javascript"></script> 
    <script src="/assets/long_or_short_details.js?body=1" type="text/javascript"></script> 
    <script src="/assets/rails.js?body=1" type="text/javascript"></script> 
    <script src="/assets/row_shading.js?body=1" type="text/javascript"></script> 
    <script src="/assets/sortable_hook.js?body=1" type="text/javascript"></script> 
    <script src="/assets/application.js?body=1" type="text/javascript"></script> 
+0

你解決這個問題?因爲它真的很奇怪,我很好奇 – Benj

回答

1

你有沒有嘗試呢?

//= require jquery-1.7.2.min.js 
//= require jquery-ui-1.8.22.custom.min.js 
//= require_tree . 
//= require_self 

似乎在您的文章,您刪除require_self

+0

我的錯誤。我加回來了。上述沒有工作。 –

相關問題