5

「Ruby on Rails」の本を読んでいます。「application.js」には、次の方法で、より具体的な jQuery UI で他の JavaScript ライブラリを含めています。

//= require jquery
//= require jquery_ujs
//= require jquery-ui

これは通常の JavaScript ファイル (例として "html.erb" のような ruby​​ 拡張ではありません) であるため、アプリケーションはどのようにして require コマンドを実行することを認識しているのでしょうか? これはどのような種類の JavaScript 構文ですか:

//= 

これは通常の JavaScript ファイルなので、JavaScript ファイルを含めるために「script」タグを使用しないのはなぜですか?

また、「require」メソッドが $LOAD_PATH 変数フォルダーによって定義されたこのライブラリーをチェックすることをここで読みました。「jquery-ui」が保存されている場所を確認するにはどうすればよいですか? 他のアプリケーションでjQuery UIを使用するには、JavaScriptファイルだけでなく、ライブラリで使用されるcssファイルと画像を追加する必要があるため、質問しています-この場合、これを1行だけで行っていますか?

4

1 に答える 1

10

これはどのような JavaScript 構文ですか。

a で始まるもの//はすべて Javascript コメントです。

それをどのように処理できますか?

サーバー側のスプロケットは、JS ファイルをスキャンしてdirectives. //=特別な Sprocket ディレクティブです。そのディレクティブに遭遇すると、この例では、コマンドを処理するようにディレクティブ プロセッサに要求します。requireSprockets がない場合、//= require ..行は単純な JS コメントになります。

ルビーrequirevs スプロケットrequire

これらは2つの完全に異なるものです。リンク先は Ruby の require です。

スクリプト タグを使用して JS ファイルを読み込んでみませんか。

通常、すべてのアプリ JS ファイルを連結し、それらを 1 つのマスター JS ファイルに縮小して、それを含めます。これについては、YSlow のベスト プラクティスを読むことをお勧めします。

Asset Pipline で Railscasts を見ることもお勧めします - http://railscasts.com/episodes/279-understanding-the-asset-pipeline

乾杯!

于 2012-11-04T11:35:09.710 に答える