2012-04-30 41 views
1

我繼承了使用jQuery的 Rails應用程序它有很多的JavaScript的包括資產/ JavaScript的,在application.js中,要求所有其他的文件,包括rails3應用程序使用jquery,但不包括它在Gemfile中,應該嗎?

//= require jquery 
//= require jquery_ujs 

這是很好的和JavaScript好的工作。

不過,我也期待看到

gem "jquery-rails" 

在Gemfile中。

問:
只需要最初的發電機像rails g jquery:install的Gemfile中錄入和是否確定包括,如果不使用發電機 - 將JS還是工作?

回答

2

jqueryjquery_ujs的實際來源包含在gem中,因此您需要保留它。但是,如果您正在使用資產管道並預編譯資源,那麼在預編譯後無需加載gem。這意味着將您的assets組中的寶石放在您的Gemfile中是安全的。

如果您的Gemfile中沒有jquery-rails,並且它仍然有效,這意味着jquery的源代碼位於您的加載路徑中的其他位置。您可能想要查看app/assetslib/assetsvendor/assets。這是可以的,但沒有必要,這意味着您在進行軟件包更新時不會自動獲取更新。

+0

+1謝謝iiain。我終於在我的Gemfile中找到了它。這是沃爾多的一刻。但是我在這個過程中學到了很多東西! – junky

+0

如果您使用的是jquery,那麼'jquery.js'(或最小化版本)應該位於您的項目中。有一些JavaScript項目在他們的項目中包含jQuery,但我不知道哪些應該是非常罕見的。 – iain

1

只要在瀏覽器中加載JQuery JS,JQuery仍然可以工作。

相關問題