![](/img/trans.png)
[英]How do I add js within another directory in my assets/javascripts/ to the assets.precompile?
[英]Rails 4 assets.precompile
這是一個常見的問題,但沒有一個解決方案解決了我的問題,所以在這里:
我將ace.js添加到我的rails4應用程序中,所以我做的是
- Added vendor/assets/ace/ace.js
- Created vendor/assets/ace/index.js , with content
//= require ace
- Added the following to my production.rb
config.assets.precompile += %w( index.js )
config.assets.paths << Rails.root.join("vendor", "assets", "ace")
所以在我的布局文件中我有:
<%= javascript_include_tag "ace" %>
它在dev上運行得很好,但是當我運行時:
RAILS_ENV=production bundle exec rake assets:precompile
它不會創建ace文件的摘要版本。
我錯過了什么嗎?
通過添加以下內容解決:
config.assets.precompile += %w( index.js )
to config/application.rb
。 (不是config/environments/production.rb
)
在Rails 4.0 beta1中測試過。
如果要將ace
目錄添加為資產,則應將js
文件放在vendor/assets/ace/javascripts
目錄下(您應該創建)。
通常你不需要config.assets.precompile += %w( index.js )
,Sprockets會很好地管理它。 如果只有一個js文件要從vendors/assets/ace
目錄添加,那么你不需要index.js。 如果您在vendor/assets/ace/javascripts/your_vendor_js_library
下有很多子目錄和文件, index.js
將是正確的。 最后一點:你不需要<%= javascript_include_tag "ace" %>
,它復制了<%= javascript_include_tag "application" %>
的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.