Rails 3.1アセットパイプラインマニフェストファイルはJavaScriptsをピックアップしません

StackOverflow https://stackoverflow.com/questions/8813047

  •  26-10-2019
  •  | 
  •  

質問

私はベンダー/アセット/javaScriptsにJavaScriptsのすべての混乱を持っています。私のアプリ/Assets/JavaScripts/Application.jsファイルには、指令があります。

//= require_tree .

これは、現在のApp/Assets/JavaScriptsディレクトリのみを参照し、LIB/ASSETSまたはベンダー/アセットではありませんか?

JavaScriptsを明示的に含めると、機能します。必要がない場合は、本当にやりたくないだけです。

Assets PipelineがApp Directory(lib and Vendor)の外部から資産を自動的に提供できるようにする私が欠けているものはありますか?

役に立ちましたか?

解決

require_treeは、application.jsファイルの下にある資産のみをプルします。

lib/assetsvendor/assets パイプラインのルックアップパスにすでに含まれています(このコードを参照してください).

2番目のマニフェストを使用して、これらのベンダーファイルを含めることができます。

行きます vendor/assets/javascripts misc_vendor.jsというファイルを作成します

その内部では、require_treeディレクティブを入れます。

次に、アプリケーションからそのファイルを参照してください。JSマニフェスト:

require misc_vendor

ロード注文のために問題がある場合は、require_treeを使用する代わりに、必要な順序でベンダーファイルを手動で要求できます。

パイプラインへの変換の一環として、それは物事をきれいにする良い機会かもしれません! :-)

他のヒント

また、このような2番目のマニフェストなしでそれを行うことができます:

//= require_tree ../../../vendor/assets/javascripts/.

パスは、 'app/assets/javascripts/application.jsのマニフェストファイルに関連している必要があります。

このようなapplication.rbファイルのパスを拡張する必要があります。

config.assets.paths << "#{Rails.root}/vendor/assets/some file name"

詳細については、このガイドを参照してください

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top