4

私は現在、多くの JavaScript コードを含むアプリケーションに取り組んでいます。すべてのページ/パーシャルにインライン JavaScript コードを書いていますが、ほとんどのコードは別の場所で再利用されています。これらの小さなスクリプトを、より便利で保守しやすいものにリファクタリングする方法を見つけようとしています。私は jQuery を使用しているため、組み込みの JS ジェネレーターは使用していません。

これまでのところ、次のことを考えてきました。

  • すべてをapplication.js新しい UJS スタイル ヘルパーに移動して、そのメリットを享受してください。これは、私が現在持っているものよりも少しだけ優れています。これは、大きな不格好な JS ファイルになってしまうためです。

  • js_erb gemを使用して、javascript ソース コードを書き込みapp/javascripts、i18n、HTML テンプレート、およびコンパイルを自動的に取得する方法を提供します。

  • 試したことがなく、rails3 と互換性があるかどうかもわかりませんが、sprockets-railsを使用してください。

そのようなトピックに関する経験/提案はありますか?

4

3 に答える 3

1

Sprockets 2.0は現在非常に活発に開発されており、ActionPack の一部として Rails 3.1 に同梱されます。最も簡単な方法は、Rails 3.1 を待つか、次のように Gemfile を指定して最新の Rails 3.1.0.rc4 にアップグレードすることです。

gem 'rails', :git => 'git://github.com/rails/rails.git', :tag => 'v3.1.0.rc4'

そして、やります

bundle install

それまでの間、それがどのように機能するかについて今すぐ始めましょう。

于 2011-07-08T06:39:21.710 に答える
0

個人的には、JavaScript コードを意味のあるファイルにグループ化し、それを必要とするページにそれらを含めます。たとえば、ほとんどのページで呼び出されるコードがある場合は、それを application.js に含めます。ただし、ユーザー コントローラー ページにのみ含まれるコードがある場合は、user.js ファイルを作成し、それらのページにのみ含めます。これを行うことで、コードは私が保守しやすい方法で編成されます。これにはいくつかのパフォーマンスのトレードオフがあるかもしれませんが、私の場合は保守性がより重要です。

于 2010-11-25T23:41:48.827 に答える
0

部分コードとは別に、JS コードをファイルにグループ化します

  1. パーシャルはキャッシュでき、JS の更新では HTML キャッシュを削除する必要はありません。
  2. 機能が複雑になるにつれて、コード構成が改善され、管理と最適化が容易になります
  3. 時間の経過とともに JS のサイズが大きくなり、CDN を使用して JS を配信できます。これは、ページの読み込み時間のパフォーマンスを大幅に向上させます。
于 2011-02-24T04:40:34.373 に答える