3

新しい emberjs プロジェクトを開始しようとしていますが、requirejs と rake-pipeline のどちらを使用するか決定できません。

残り火のアドバイスは、rake-pipeline を使用することのようです。

議論のどちらかの側について何か考えている人はいますか?

4

1 に答える 1

5

必要に応じてページの読み込み後に依存関係を動的に読み込みたい場合は、requirejs が推奨されるオプションです。

ただし、ページのロード時にすべてのスクリプトをロードすることが問題にならない場合 (JavaScript の量が少ないか、コンテンツのレンダリングだけに大量の JavaScript が必要な場合)、Rails アセット パイプラインは多くのボイラープレートを削減します。 require js を使用すると、最終的には r.js コンパイラを使用して、すべての依存関係を単一のスクリプトにバンドルする必要があります。Rails は、この連結と縮小化のすべてをバックグラウンドで透過的に実行します。何もする必要はありません。Rails アセット パイプラインを使用すると、開発中のスクリプトはすべて縮小されずに個別のファイルとして提供され、本番環境ではスクリプトは縮小および連結されて提供されるため、ローリング デプロイが容易になります。これにより、変更のたびにビルド スクリプトやオプティマイザを実行する必要がなくなります。HTML ファイルを変更する必要さえありません。スプロケットの仕様に従い、依存関係を指定する限り (requirejs の場合もこれを行う必要があります)、すべてがそのまま使用できます。

また、Rails アセット パイプラインは、スプロケット (Rails パイプラインの背後で使用される依存関係マネージャー) が Rails なしで独立して使用できるため、クライアント アプリケーションを Rails プラットフォームに結び付けません。

ただし、AMD との互換性が重要な場合 (たとえば、NodeJS サーバーとクライアントで同じコードを使用する予定がある場合、または配布可能なライブラリを作成している場合) は、requirejs が最適なオプションです。

また、 requirejs を Rails パイプラインに統合しようとするhttps://github.com/jwhitley/requirejs-rails/を参照することもできます。このアプローチを採用する前に、requirejs と rails の両方に十分な知識があることを確認してください。

于 2012-08-16T10:33:34.100 に答える